Message ID | 1348561590-28067-17-git-send-email-yinghai@kernel.org (mailing list archive) |
---|---|
State | New, archived |
Delegated to: | Bjorn Helgaas |
Headers | show |
diff --git a/arch/x86/pci/common.c b/arch/x86/pci/common.c index 720e973f..8580a6b 100644 --- a/arch/x86/pci/common.c +++ b/arch/x86/pci/common.c @@ -446,11 +446,14 @@ void __init dmi_check_pciprobe(void) struct pci_bus * __devinit pcibios_scan_root(int busnum) { - struct pci_bus *bus = NULL; + struct pci_host_bridge *host_bridge = NULL; + struct pci_bus *bus; - while ((bus = pci_find_next_bus(bus)) != NULL) { - if (bus->number == busnum) { + for_each_pci_host_bridge(host_bridge) { + if (host_bridge->bus->number == busnum) { /* Already scanned */ + bus = host_bridge->bus; + put_device(&host_bridge->dev); return bus; } }
Signed-off-by: Yinghai Lu <yinghai@kernel.org> Cc: x86@kernel.org --- arch/x86/pci/common.c | 9 ++++++--- 1 files changed, 6 insertions(+), 3 deletions(-)