Re: [bug report] powerpc: per device MSI irq domain
From: Nilay Shroff <hidden>
Date: 2025-12-04 17:26:48
On 12/4/25 4:18 PM, Nam Cao wrote:
Hi Nilay, Nilay Shroff [off-list ref] writes:quoted
I have been using an NVMe disk on my PowerPC system that supports up to 129 MSI-X interrupt vectors. Everything worked fine until Linux kernel v6.18, after which the NVMe driver stopped detecting the disk because the driver probe now fails. After further investigation, I found that the probe failure in v6.18 occurs during PCI/MSI-X vector allocation. A git bisect identified commit daaa574aba6f (“powerpc/pseries/msi: Switch to msi_create_parent_ irq_domain()”) as the first bad commit.Thanks for the report. I can (kind of) reproduce the problem with QEMU. I think moving rtas_prepare_msi_irqs() into pseries_irq_domain_alloc() should resolve the problem. But I'm not sure because I don't understand how RTAS works. Does IBM have some documentation describing the RTAS API? I failed to google it.
Yes you can find the architecture document here: https://github.com/linuxppc/public-docs/blob/main/LoPAPR/LoPAR-20200812.pdf You may refer section 7 in the above document, which describes RTAS API. Thanks,--Nilay