ACPICA: Increase maximum buffer size dumped to screen in buffer object dump
[safe/jmp/linux-2.6] / drivers / pci / bus.c
index 863340a..d708358 100644 (file)
@@ -108,6 +108,7 @@ int pci_bus_add_device(struct pci_dev *dev)
 void pci_bus_add_devices(struct pci_bus *bus)
 {
        struct pci_dev *dev;
+       struct pci_bus *child_bus;
        int retval;
 
        list_for_each_entry(dev, &bus->devices, bus_list) {
@@ -138,11 +139,25 @@ void pci_bus_add_devices(struct pci_bus *bus)
                               up_write(&pci_bus_sem);
                        }
                        pci_bus_add_devices(dev->subordinate);
-                       retval = sysfs_create_link(&dev->subordinate->class_dev.kobj,
-                                                  &dev->dev.kobj, "bridge");
+
+                       /* register the bus with sysfs as the parent is now
+                        * properly registered. */
+                       child_bus = dev->subordinate;
+                       if (child_bus->is_added)
+                               continue;
+                       child_bus->dev.parent = child_bus->bridge;
+                       retval = device_register(&child_bus->dev);
+                       if (retval)
+                               dev_err(&dev->dev, "Error registering pci_bus,"
+                                       " continuing...\n");
+                       else {
+                               child_bus->is_added = 1;
+                               retval = device_create_file(&child_bus->dev,
+                                                       &dev_attr_cpuaffinity);
+                       }
                        if (retval)
-                               dev_err(&dev->dev, "Error creating sysfs "
-                                       "bridge symlink, continuing...\n");
+                               dev_err(&dev->dev, "Error creating cpuaffinity"
+                                       " file, continuing...\n");
                }
        }
 }