Message ID | 1486045604-17735-1-git-send-email-prarit@redhat.com (mailing list archive) |
---|---|
State | New, archived |
Delegated to: | Bjorn Helgaas |
Headers | show |
diff --git a/drivers/pci/msi.c b/drivers/pci/msi.c index 50c5003295ca..3d709311052d 100644 --- a/drivers/pci/msi.c +++ b/drivers/pci/msi.c @@ -379,7 +379,7 @@ static void free_msi_irqs(struct pci_dev *dev) } list_del(&entry->list); - kfree(entry); + free_msi_entry(entry); } if (dev->msi_irq_groups) {
During device setup, msix_setup_entries() and msi_setup_entry() allocate msi_desc by calling alloc_msi_entry(). alloc_msi_entry() can also allocate a affinity cpumask. During device teardown free_msi_irqs() is called and the msi_desc is freed, but the affinity cpumask is leaked. Fix it by calling free_msi_entry() which frees both the msi_desc and the affinity cpumask. Signed-off-by: Prarit Bhargava <prarit@redhat.com> Cc: mstowe@redhat.com Cc: Bjorn Helgaas <bhelgaas@google.com> --- drivers/pci/msi.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)