Re: [patch 35/39] PCI/MSI: Reject MSI-X early

From: Bjorn Helgaas
Date: Wed Nov 16 2022 - 11:38:36 EST


On Fri, Nov 11, 2022 at 02:55:11PM +0100, Thomas Gleixner wrote:
> Similar to PCI multi-MSI reject MSI-X enablement when a irq domain is
> attached to the device which does not support MSI-X.
>
> Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>

Acked-by: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>

> ---
> drivers/pci/msi/msi.c | 4 ++++
> 1 file changed, 4 insertions(+)
>
> --- a/drivers/pci/msi/msi.c
> +++ b/drivers/pci/msi/msi.c
> @@ -760,6 +760,10 @@ int __pci_enable_msix_range(struct pci_d
> if (WARN_ON_ONCE(dev->msix_enabled))
> return -EINVAL;
>
> + /* Check MSI-X early on irq domain enabled architectures */
> + if (!pci_msi_domain_supports(dev, MSI_FLAG_PCI_MSIX, ALLOW_LEGACY))
> + return -ENOTSUPP;
> +
> if (!pci_msi_supported(dev, nvec) || dev->current_state != PCI_D0)
> return -EINVAL;
>
>