Messages in this thread | | | From | (Eric W. Biederman) | Subject | Re: [PATCH 17/21] MSI: Clear the irq_desc's msi pointer on free | Date | Thu, 22 Mar 2007 08:23:33 -0600 |
| |
Michael Ellerman <michael@ellerman.id.au> writes:
> Currently we never clear the msi_desc pointer in the irq_desc. This > leaves us with a pointer to free'ed memory hanging around. No one seems > to have hit this, so presumably other parts of the code are protecting > us from ever using the stale pointer .. or we're just lucky, we should > still clear it.
Hmm. Maybe. Currently this is done in dynamic_irq_cleanup, at least for everything except sparc64.
> > Signed-off-by: Michael Ellerman <michael@ellerman.id.au> > --- > > drivers/pci/msi.c | 1 + > 1 file changed, 1 insertion(+) > > Index: msi-new/drivers/pci/msi.c > =================================================================== > --- msi-new.orig/drivers/pci/msi.c > +++ msi-new/drivers/pci/msi.c > @@ -520,6 +520,7 @@ static int msi_free_irq(struct pci_dev* > list_del(&entry->list); > > arch_teardown_msi_irq(irq); > + set_irq_msi(irq, NULL); > kfree(entry); > > if (type == PCI_CAP_ID_MSIX && list_empty(&dev->msi_list)) - 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/
| |