2022-11-11 14:37:15

by Thomas Gleixner

[permalink] [raw]
Subject: [patch 14/33] PCI/MSI: Remove unused pci_dev_has_special_msi_domain()

The check for special MSI domains like VMD which prevents the interrupt
remapping code to overwrite device::msi::domain is not longer required and
has been replaced by an x86 specific version which is aware of MSI parent
domains.

Remove it.

Signed-off-by: Thomas Gleixner <[email protected]>
---
drivers/pci/msi/irqdomain.c | 21 ---------------------
include/linux/msi.h | 2 --
2 files changed, 23 deletions(-)

--- a/drivers/pci/msi/irqdomain.c
+++ b/drivers/pci/msi/irqdomain.c
@@ -414,24 +414,3 @@ struct irq_domain *pci_msi_get_device_do
DOMAIN_BUS_PCI_MSI);
return dom;
}
-
-/**
- * pci_dev_has_special_msi_domain - Check whether the device is handled by
- * a non-standard PCI-MSI domain
- * @pdev: The PCI device to check.
- *
- * Returns: True if the device irqdomain or the bus irqdomain is
- * non-standard PCI/MSI.
- */
-bool pci_dev_has_special_msi_domain(struct pci_dev *pdev)
-{
- struct irq_domain *dom = dev_get_msi_domain(&pdev->dev);
-
- if (!dom)
- dom = dev_get_msi_domain(&pdev->bus->dev);
-
- if (!dom)
- return true;
-
- return dom->bus_token != DOMAIN_BUS_PCI_MSI;
-}
--- a/include/linux/msi.h
+++ b/include/linux/msi.h
@@ -599,8 +599,6 @@ struct irq_domain *pci_msi_create_irq_do
struct irq_domain *parent);
u32 pci_msi_domain_get_msi_rid(struct irq_domain *domain, struct pci_dev *pdev);
struct irq_domain *pci_msi_get_device_domain(struct pci_dev *pdev);
-bool pci_dev_has_special_msi_domain(struct pci_dev *pdev);
-
#endif /* CONFIG_GENERIC_MSI_IRQ */

#endif /* LINUX_MSI_H */



2022-11-16 20:46:57

by Bjorn Helgaas

[permalink] [raw]
Subject: Re: [patch 14/33] PCI/MSI: Remove unused pci_dev_has_special_msi_domain()

On Fri, Nov 11, 2022 at 02:58:33PM +0100, Thomas Gleixner wrote:
> The check for special MSI domains like VMD which prevents the interrupt
> remapping code to overwrite device::msi::domain is not longer required and
> has been replaced by an x86 specific version which is aware of MSI parent
> domains.
>
> Remove it.
>
> Signed-off-by: Thomas Gleixner <[email protected]>

Acked-by: Bjorn Helgaas <[email protected]>

> ---
> drivers/pci/msi/irqdomain.c | 21 ---------------------
> include/linux/msi.h | 2 --
> 2 files changed, 23 deletions(-)
>
> --- a/drivers/pci/msi/irqdomain.c
> +++ b/drivers/pci/msi/irqdomain.c
> @@ -414,24 +414,3 @@ struct irq_domain *pci_msi_get_device_do
> DOMAIN_BUS_PCI_MSI);
> return dom;
> }
> -
> -/**
> - * pci_dev_has_special_msi_domain - Check whether the device is handled by
> - * a non-standard PCI-MSI domain
> - * @pdev: The PCI device to check.
> - *
> - * Returns: True if the device irqdomain or the bus irqdomain is
> - * non-standard PCI/MSI.
> - */
> -bool pci_dev_has_special_msi_domain(struct pci_dev *pdev)
> -{
> - struct irq_domain *dom = dev_get_msi_domain(&pdev->dev);
> -
> - if (!dom)
> - dom = dev_get_msi_domain(&pdev->bus->dev);
> -
> - if (!dom)
> - return true;
> -
> - return dom->bus_token != DOMAIN_BUS_PCI_MSI;
> -}
> --- a/include/linux/msi.h
> +++ b/include/linux/msi.h
> @@ -599,8 +599,6 @@ struct irq_domain *pci_msi_create_irq_do
> struct irq_domain *parent);
> u32 pci_msi_domain_get_msi_rid(struct irq_domain *domain, struct pci_dev *pdev);
> struct irq_domain *pci_msi_get_device_domain(struct pci_dev *pdev);
> -bool pci_dev_has_special_msi_domain(struct pci_dev *pdev);
> -
> #endif /* CONFIG_GENERIC_MSI_IRQ */
>
> #endif /* LINUX_MSI_H */
>