Commit ebe168d5 authored by Linus Torvalds's avatar Linus Torvalds
parents b15a3891 cc74d96f
...@@ -143,14 +143,18 @@ void pci_bus_add_devices(struct pci_bus *bus) ...@@ -143,14 +143,18 @@ void pci_bus_add_devices(struct pci_bus *bus)
/* register the bus with sysfs as the parent is now /* register the bus with sysfs as the parent is now
* properly registered. */ * properly registered. */
child_bus = dev->subordinate; child_bus = dev->subordinate;
if (child_bus->is_added)
continue;
child_bus->dev.parent = child_bus->bridge; child_bus->dev.parent = child_bus->bridge;
retval = device_register(&child_bus->dev); retval = device_register(&child_bus->dev);
if (retval) if (retval)
dev_err(&dev->dev, "Error registering pci_bus," dev_err(&dev->dev, "Error registering pci_bus,"
" continuing...\n"); " continuing...\n");
else else {
child_bus->is_added = 1;
retval = device_create_file(&child_bus->dev, retval = device_create_file(&child_bus->dev,
&dev_attr_cpuaffinity); &dev_attr_cpuaffinity);
}
if (retval) if (retval)
dev_err(&dev->dev, "Error creating cpuaffinity" dev_err(&dev->dev, "Error creating cpuaffinity"
" file, continuing...\n"); " file, continuing...\n");
......
...@@ -278,6 +278,7 @@ struct pci_bus { ...@@ -278,6 +278,7 @@ struct pci_bus {
struct device dev; struct device dev;
struct bin_attribute *legacy_io; /* legacy I/O for this bus */ struct bin_attribute *legacy_io; /* legacy I/O for this bus */
struct bin_attribute *legacy_mem; /* legacy mem */ struct bin_attribute *legacy_mem; /* legacy mem */
unsigned int is_added:1;
}; };
#define pci_bus_b(n) list_entry(n, struct pci_bus, node) #define pci_bus_b(n) list_entry(n, struct pci_bus, node)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment