2021-12-10 22:19:20

by Thomas Gleixner

[permalink] [raw]
Subject: [patch V3 02/35] x86/pci/XEN: Use PCI device property

From: Thomas Gleixner <[email protected]>

instead of fiddling with MSI descriptors.

Signed-off-by: Thomas Gleixner <[email protected]>
Cc: Juergen Gross <[email protected]>
Cc: [email protected]
---
V3: Use pci_dev->msix_enabled.
---
arch/x86/pci/xen.c | 9 ++-------
1 file changed, 2 insertions(+), 7 deletions(-)

--- a/arch/x86/pci/xen.c
+++ b/arch/x86/pci/xen.c
@@ -399,9 +399,7 @@ static void xen_teardown_msi_irqs(struct

static void xen_pv_teardown_msi_irqs(struct pci_dev *dev)
{
- struct msi_desc *msidesc = first_pci_msi_entry(dev);
-
- if (msidesc->pci.msi_attrib.is_msix)
+ if (dev->msix_enabled)
xen_pci_frontend_disable_msix(dev);
else
xen_pci_frontend_disable_msi(dev);
@@ -417,10 +415,7 @@ static int xen_msi_domain_alloc_irqs(str
if (WARN_ON_ONCE(!dev_is_pci(dev)))
return -EINVAL;

- if (first_msi_entry(dev)->pci.msi_attrib.is_msix)
- type = PCI_CAP_ID_MSIX;
- else
- type = PCI_CAP_ID_MSI;
+ type = to_pci_dev(dev)->msix_enabled ? PCI_CAP_ID_MSIX : PCI_CAP_ID_MSI;

return xen_msi_ops.setup_msi_irqs(to_pci_dev(dev), nvec, type);
}



2021-12-13 13:56:46

by Jason Gunthorpe

[permalink] [raw]
Subject: Re: [patch V3 02/35] x86/pci/XEN: Use PCI device property

On Fri, Dec 10, 2021 at 11:18:46PM +0100, Thomas Gleixner wrote:
> From: Thomas Gleixner <[email protected]>
>
> instead of fiddling with MSI descriptors.
>
> Signed-off-by: Thomas Gleixner <[email protected]>
> Cc: Juergen Gross <[email protected]>
> Cc: [email protected]
> ---
> V3: Use pci_dev->msix_enabled.
> ---
> arch/x86/pci/xen.c | 9 ++-------
> 1 file changed, 2 insertions(+), 7 deletions(-)

Reviewed-by: Jason Gunthorpe <[email protected]>

Jason

Subject: [tip: irq/msi] x86/pci/XEN: Use PCI device property

The following commit has been merged into the irq/msi branch of tip:

Commit-ID: 0bcfade920804d597888e4181bc315a3c500280d
Gitweb: https://git.kernel.org/tip/0bcfade920804d597888e4181bc315a3c500280d
Author: Thomas Gleixner <[email protected]>
AuthorDate: Fri, 10 Dec 2021 23:18:46 +01:00
Committer: Thomas Gleixner <[email protected]>
CommitterDate: Thu, 16 Dec 2021 22:16:37 +01:00

x86/pci/XEN: Use PCI device property

instead of fiddling with MSI descriptors.

Signed-off-by: Thomas Gleixner <[email protected]>
Reviewed-by: Jason Gunthorpe <[email protected]>
Link: https://lore.kernel.org/r/[email protected]

---
arch/x86/pci/xen.c | 9 ++-------
1 file changed, 2 insertions(+), 7 deletions(-)

diff --git a/arch/x86/pci/xen.c b/arch/x86/pci/xen.c
index a63d30a..bfd87b4 100644
--- a/arch/x86/pci/xen.c
+++ b/arch/x86/pci/xen.c
@@ -399,9 +399,7 @@ static void xen_teardown_msi_irqs(struct pci_dev *dev)

static void xen_pv_teardown_msi_irqs(struct pci_dev *dev)
{
- struct msi_desc *msidesc = first_pci_msi_entry(dev);
-
- if (msidesc->pci.msi_attrib.is_msix)
+ if (dev->msix_enabled)
xen_pci_frontend_disable_msix(dev);
else
xen_pci_frontend_disable_msi(dev);
@@ -417,10 +415,7 @@ static int xen_msi_domain_alloc_irqs(struct irq_domain *domain,
if (WARN_ON_ONCE(!dev_is_pci(dev)))
return -EINVAL;

- if (first_msi_entry(dev)->pci.msi_attrib.is_msix)
- type = PCI_CAP_ID_MSIX;
- else
- type = PCI_CAP_ID_MSI;
+ type = to_pci_dev(dev)->msix_enabled ? PCI_CAP_ID_MSIX : PCI_CAP_ID_MSI;

return xen_msi_ops.setup_msi_irqs(to_pci_dev(dev), nvec, type);
}