Re: [patch V3 16/22] genirq/msi: Provide new domain id based interfaces for freeing interrupts
From: Thomas Gleixner
Date: Mon Jan 16 2023 - 13:25:00 EST
David!
On Mon, Jan 16 2023 at 17:35, Thomas Gleixner wrote:
> On Mon, Jan 16 2023 at 09:56, David Woodhouse wrote:
>
> This is just wrong. I need to taxi my grandson. Will have a look
> afterwards.
There are three 'tglx missed to fixup XEN' problems:
- b2bdda205c0c ("PCI/MSI: Let the MSI core free descriptors")
This requires the MSI_FLAG_FREE_MSI_DESCS flag to be set in the XEN
MSI domain info
- 2f2940d16823 ("genirq/msi: Remove filter from msi_free_descs_free_range()")
This requires the 'desc->irq = 0' disassociation on teardown.
- ffd84485e6be ("PCI/MSI: Let the irq code handle sysfs groups")
Lacks a flag in the XEN MSI domain info as well.
Combo patch below.
Thanks,
tglx
---
--- a/arch/x86/pci/xen.c
+++ b/arch/x86/pci/xen.c
@@ -392,6 +392,7 @@ static void xen_teardown_msi_irqs(struct
msi_for_each_desc(msidesc, &dev->dev, MSI_DESC_ASSOCIATED) {
for (i = 0; i < msidesc->nvec_used; i++)
xen_destroy_irq(msidesc->irq + i);
+ msidesc->irq = 0;
}
}
@@ -434,6 +435,7 @@ static struct msi_domain_ops xen_pci_msi
static struct msi_domain_info xen_pci_msi_domain_info = {
.ops = &xen_pci_msi_domain_ops,
+ .flags = MSI_FLAG_FREE_MSI_DESCS | MSI_FLAG_DEV_SYSFS,
};
/*