Re: [PULL 25/93] tests/qtest: add RISC-V IOMMU MRIF notice tests

Alistair Francis <[email protected]>
Newsgroups org.nongnu.qemu-devel
Message-ID <[email protected]>
On Thu, 2026-08-20 at 07:17 -0700, Richard Henderson wrote:
> On 8/19/26 20:43, [email protected] wrote:
> > From: Flavien Solt <[email protected]>
> > 
> > Exercise MRIF-mode MSI writes through iommu-testdev with the
> > destination
> > interrupt-enable bit both clear and set. Each case requires the
> > pending
> > bit to be stored plus the configured notice ID to reach guest
> > memory.
> > 
> > The enable-clear case regresses the notice suppression fixed by the
> > previous patch. The enable-set case provides a control for the
> > existing
> > path.
> > 
> > Signed-off-by: Flavien Solt <[email protected]>
> > Reviewed-by: Chao Liu <[email protected]>
> > Message-ID: <[email protected]>
> > Signed-off-by: Alistair Francis <[email protected]>
> > ---
> >   tests/qtest/iommu-riscv-test.c | 102
> > +++++++++++++++++++++++++++++++++
> >   1 file changed, 102 insertions(+)
> 
> Something in here has an endian bug, as this new test fails on s390x:
> 
> https://gitlab.com/qemu-project/qemu/-/jobs/16009267995#L5106
> 
> ▶  694/1142 /riscv64/iommu-testdev/mrif-notice/enable-clear - 
> ERROR:../tests/qtest/iommu-riscv-
> test.c:349:run_riscv_iommu_mrif_notice: assertion failed 
> (pending & (1ull << RISCV_MRIF_INTID) != 0): (0 != 0) FAIL
> 
> Full output when running manually
> 
> # Found PCI device: vendor=0x1b36 device=0x0014 devfn=0x08
> # Found riscv-iommu-pci at devfn=0x08
> # RISC-V IOMMU MMIO base address: 0x40000000
> # Searching for iommu-testdev (vendor=0x1b36, device=0x0005)
> # Found PCI device: vendor=0x1b36 device=0x0005 devfn=0x10
> # MRIF notice: enable=0 pending=0x2000000000000000 notice=0x2d010000
> **
> ERROR:../src/tests/qtest/iommu-riscv-
> test.c:349:run_riscv_iommu_mrif_notice: assertion 
> failed (pending & (1ull << RISCV_MRIF_INTID) != 0): (0 != 0)
> not ok /riscv64/iommu-testdev/mrif-notice/enable-clear - 
> ERROR:../src/tests/qtest/iommu-riscv-
> test.c:349:run_riscv_iommu_mrif_notice: assertion 
> failed (pending & (1ull << RISCV_MRIF_INTID) != 0): (0 != 0)
> Bail out!
> Aborted (core dumped)
> 
> I assume pending was expected to equal 0x20, not the byte-reverse.

I have dropped the entire series from my PR and will send a v2.

Alistair

> 
> 
> r~
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.