[PATCH] pciehp: Add missing pci_dev_put
Kenji Kaneshige [Fri, 12 May 2006 02:23:39 +0000 (11:23 +0900)]
The PCIEHP driver leaks reference counter of pci_dev structures. This
patch adds missing pci_dev_put() calls to PCIEHP driver.

Signed-off-by: Kenji Kaneshige <kaneshige.kenji@jp.fujitsu.com>
Cc: Kristen Accardi <kristen.c.accardi@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

drivers/pci/hotplug/pciehp_pci.c

index 922b183..854aaea 100644 (file)
@@ -225,6 +225,7 @@ int pciehp_configure_device(struct slot *p_slot)
                if ((dev->class >> 16) == PCI_BASE_CLASS_DISPLAY) {
                        err("Cannot hot-add display device %s\n",
                                        pci_name(dev));
+                       pci_dev_put(dev);
                        continue;
                }
                if ((dev->hdr_type == PCI_HEADER_TYPE_BRIDGE) ||
@@ -232,6 +233,7 @@ int pciehp_configure_device(struct slot *p_slot)
                        pciehp_add_bridge(dev);
                }
                program_fw_provided_values(dev);
+               pci_dev_put(dev);
        }
 
        pci_bus_assign_resources(parent);