Re: [PATCH v3 3/3] PCI/MSI: Convert pci_msi_ignore_mask to per MSI domain flag
From: Roger Pau Monné
Date: Tue Mar 25 2025 - 06:55:23 EST
On Tue, Mar 25, 2025 at 11:27:51AM +0100, Thomas Gleixner wrote:
> On Tue, Mar 25 2025 at 11:22, Roger Pau Monné wrote:
> > On Tue, Mar 25, 2025 at 10:20:43AM +0100, Thomas Gleixner wrote:
> > I'm a bit confused by what msi_create_device_irq_domain() does, as it
> > does allocate an irq_domain with an associated msi_domain_info
> > structure, however that irq_domain is set in
> > dev->msi.data->__domains[domid].domain rather than dev->msi.domain,
> > and doesn't override the default irq_domain set by
> > pcibios_device_add().
>
> The default irq domain is a parent domain in that case on top of which
> the per device domains are built. And those are private to the device.
Sorry to ask, but shouldn't dev_get_msi_domain() return the specific
device domain rather than the parent one? Otherwise I feel the
function should rather be named dev_get_parent_msi_domain().
> The XEN variant uses the original global PCI/MSI domain concept with
> this outrageous domain wrapper hack. A crime committed by some tglx
> dude.
I see. So the proper way would be for Xen to not override the default
x86 irq_domain in dev->msi.domain (so don't have a Xen PV specific
version of x86_init.irqs.create_pci_msi_domain) and instead do
something similar to what VMD does?
Thanks, Roger.