| Submitter | Yinghai Lu |
|---|---|
| Date | Jan. 27, 2013, 7:23 p.m. |
| Message ID | <1359314629-18651-10-git-send-email-yinghai@kernel.org> |
| Download | mbox | patch |
| Permalink | /patch/216038/ |
| State | Superseded |
| Headers | show |
Comments
Patch
diff --git a/arch/x86/pci/common.c b/arch/x86/pci/common.c index 505731b..b4b4032 100644 --- a/arch/x86/pci/common.c +++ b/arch/x86/pci/common.c @@ -447,11 +447,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; } }
Replace that with hotplug-safe version for iteration. Signed-off-by: Yinghai Lu <yinghai@kernel.org> Cc: x86@kernel.org --- arch/x86/pci/common.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-)