[PATCH] PCIe: portdrv: call pci_disable_device during remove

From: Alex Chiang
Date: Sat Mar 07 2009 - 21:36:08 EST


The PCIe port driver calls pci_enable_device() during probe but
never calls pci_disable_device() during remove.

Cc: stable@xxxxxxxxxx
Signed-off-by: Alex Chiang <achiang@xxxxxx>
---
This is a bug in the original PCIe port driver code, and should
be backported to the .27 and .28 stable series.

The implementation of the PCIe port driver is different in
linux-next, and I have a different patch for that.
---
diff --git a/drivers/pci/pcie/portdrv_pci.c b/drivers/pci/pcie/portdrv_pci.c
index 248b4db..5ea566e 100644
--- a/drivers/pci/pcie/portdrv_pci.c
+++ b/drivers/pci/pcie/portdrv_pci.c
@@ -103,6 +103,7 @@ static int __devinit pcie_portdrv_probe (struct pci_dev *dev,
static void pcie_portdrv_remove (struct pci_dev *dev)
{
pcie_port_device_remove(dev);
+ pci_disable_device(dev);
kfree(pci_get_drvdata(dev));
}

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/