aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/pci/bus.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/pci/bus.c')
-rw-r--r--drivers/pci/bus.c14
1 files changed, 10 insertions, 4 deletions
diff --git a/drivers/pci/bus.c b/drivers/pci/bus.c
index ef5a6a245f5f..d708358326e5 100644
--- a/drivers/pci/bus.c
+++ b/drivers/pci/bus.c
@@ -143,15 +143,21 @@ void pci_bus_add_devices(struct pci_bus *bus)
143 /* register the bus with sysfs as the parent is now 143 /* register the bus with sysfs as the parent is now
144 * properly registered. */ 144 * properly registered. */
145 child_bus = dev->subordinate; 145 child_bus = dev->subordinate;
146 if (child_bus->is_added)
147 continue;
146 child_bus->dev.parent = child_bus->bridge; 148 child_bus->dev.parent = child_bus->bridge;
147 retval = device_register(&child_bus->dev); 149 retval = device_register(&child_bus->dev);
148 if (!retval) 150 if (retval)
151 dev_err(&dev->dev, "Error registering pci_bus,"
152 " continuing...\n");
153 else {
154 child_bus->is_added = 1;
149 retval = device_create_file(&child_bus->dev, 155 retval = device_create_file(&child_bus->dev,
150 &dev_attr_cpuaffinity); 156 &dev_attr_cpuaffinity);
157 }
151 if (retval) 158 if (retval)
152 dev_err(&dev->dev, "Error registering pci_bus" 159 dev_err(&dev->dev, "Error creating cpuaffinity"
153 " device bridge symlink," 160 " file, continuing...\n");
154 " continuing...\n");
155 } 161 }
156 } 162 }
157} 163}