diff options
Diffstat (limited to 'drivers/pci/hotplug/pciehp_pci.c')
-rw-r--r-- | drivers/pci/hotplug/pciehp_pci.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/pci/hotplug/pciehp_pci.c b/drivers/pci/hotplug/pciehp_pci.c index 9e69403be632..19f30a9f461d 100644 --- a/drivers/pci/hotplug/pciehp_pci.c +++ b/drivers/pci/hotplug/pciehp_pci.c | |||
@@ -109,6 +109,12 @@ int pciehp_unconfigure_device(struct slot *p_slot) | |||
109 | break; | 109 | break; |
110 | } | 110 | } |
111 | } | 111 | } |
112 | if (!presence) { | ||
113 | pci_dev_set_disconnected(dev, NULL); | ||
114 | if (pci_has_subordinate(dev)) | ||
115 | pci_walk_bus(dev->subordinate, | ||
116 | pci_dev_set_disconnected, NULL); | ||
117 | } | ||
112 | pci_stop_and_remove_bus_device(dev); | 118 | pci_stop_and_remove_bus_device(dev); |
113 | /* | 119 | /* |
114 | * Ensure that no new Requests will be generated from | 120 | * Ensure that no new Requests will be generated from |