Messages in this thread Patch in this message | | | Date | Sun, 25 Feb 2007 15:46:37 -0800 (PST) | Subject | Re: MSI entry unlinked before arch_teardown_msi_irq(). | From | David Miller <> |
| |
From: ebiederm@xmission.com (Eric W. Biederman) Date: Sun, 25 Feb 2007 02:08:07 -0700
> If that isn't the issue holler and I will look into it a little more.
Talking in code is always more effective :-)
This patch fixes the OOPS I was talking about:
diff --git a/drivers/pci/msi.c b/drivers/pci/msi.c index 68555c1..2f2d92e 100644 --- a/drivers/pci/msi.c +++ b/drivers/pci/msi.c @@ -678,12 +678,14 @@ static int msi_free_irq(struct pci_dev* dev, int irq) } type = entry->msi_attrib.type; entry_nr = entry->msi_attrib.entry_nr; + + arch_teardown_msi_irq(irq); + head = entry->link.head; base = entry->mask_base; get_irq_msi(entry->link.head)->link.tail = entry->link.tail; get_irq_msi(entry->link.tail)->link.head = entry->link.head; - arch_teardown_msi_irq(irq); kmem_cache_free(msi_cachep, entry); if (type == PCI_CAP_ID_MSIX) { - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |