Merge tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm
[sfrench/cifs-2.6.git] / drivers / pci / remove.c
index 8a280e9c2ad1e00b1cca15b4592d79c7460e1363..8982026637d5598a27c9a36d3b265c6b74cb4a0d 100644 (file)
@@ -7,7 +7,6 @@ static void pci_free_resources(struct pci_dev *dev)
 {
        int i;
 
-       pci_cleanup_rom(dev);
        for (i = 0; i < PCI_NUM_RESOURCES; i++) {
                struct resource *res = dev->resource + i;
                if (res->parent)
@@ -54,6 +53,10 @@ void pci_remove_bus(struct pci_bus *bus)
        pci_bus_release_busn_res(bus);
        up_write(&pci_bus_sem);
        pci_remove_legacy_files(bus);
+
+       if (bus->ops->remove_bus)
+               bus->ops->remove_bus(bus);
+
        pcibios_remove_bus(bus);
        device_unregister(&bus->dev);
 }