On Fri, Mar 17, 2023 at 05:01:49PM -0600, Alex Williamson wrote: > pci_setup_msix_device_domain() says it returns true if: > > * True when: > * - The device does not have a MSI parent irq domain associated, > * which keeps the legacy architecture specific and the global > * PCI/MSI domain models working > * - The MSI-X domain exists already > * - The MSI-X domain was successfully allocated > > That first one seems concerning, dynamic allocation only works on irq > domain configurations. What does that exclude and do we care about any > of them for vfio-pci? Several archs and other weird things override the MSI-X programming. Eg by turning it into a hypervisor call or something. These were not converted to dynamic mode. So at the VFIO level you can get end up with MSI support but done through legacy paths that don't support dynamic allocation. Eg on POWER, xen, etc. Jason