Patchwork [v6,1/2] PCI: acpiphp: fix function 0 leak when disabling a slot

login
register
mail settings
Submitter Bjorn Helgaas
Date May 23, 2012, 4:35 a.m.
Message ID <20120523043506.13449.81850.stgit@bhelgaas.mtv.corp.google.com>
Download mbox | patch
Permalink /patch/160809/
State New
Headers show

Comments

Bjorn Helgaas - May 23, 2012, 4:35 a.m.
From: Amos Kong <kongjianjun@gmail.com>

Previously, we acquired two references to function 0, but only released
one.

[bhelgaas: split this out from "remove all functions" fix]
Signed-off-by: Amos Kong <kongjianjun@gmail.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
---
 drivers/pci/hotplug/acpiphp_glue.c |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)

Patch

diff --git a/drivers/pci/hotplug/acpiphp_glue.c b/drivers/pci/hotplug/acpiphp_glue.c
index 62d0ae4..c8f9991 100644
--- a/drivers/pci/hotplug/acpiphp_glue.c
+++ b/drivers/pci/hotplug/acpiphp_glue.c
@@ -893,6 +893,7 @@  static int disable_device(struct acpiphp_slot *slot)
 	pdev = pci_get_slot(bus, PCI_DEVFN(slot->device, 0));
 	if (!pdev)
 		goto err_exit;
+	pci_dev_put(pdev);
 
 	list_for_each_entry(func, &slot->funcs, sibling) {
 		if (func->bridge) {