]> err.no Git - linux-2.6/blobdiff - drivers/base/bus.c
Pull acpi_os_free into release branch
[linux-2.6] / drivers / base / bus.c
index 64ba9011d1a8dff5f649b33af5f93f4500b747c6..83fa8b291a59ebdbcdf036cb331d86a9fe564a85 100644 (file)
@@ -8,7 +8,6 @@
  *
  */
 
-#include <linux/config.h>
 #include <linux/device.h>
 #include <linux/module.h>
 #include <linux/errno.h>
@@ -374,6 +373,7 @@ int bus_add_device(struct device * dev)
                error = device_add_attrs(bus, dev);
                if (!error) {
                        sysfs_create_link(&bus->devices.kobj, &dev->kobj, dev->bus_id);
+                       sysfs_create_link(&dev->kobj, &dev->bus->subsys.kset.kobj, "subsystem");
                        sysfs_create_link(&dev->kobj, &dev->bus->subsys.kset.kobj, "bus");
                }
        }
@@ -408,6 +408,7 @@ void bus_attach_device(struct device * dev)
 void bus_remove_device(struct device * dev)
 {
        if (dev->bus) {
+               sysfs_remove_link(&dev->kobj, "subsystem");
                sysfs_remove_link(&dev->kobj, "bus");
                sysfs_remove_link(&dev->bus->devices.kobj, dev->bus_id);
                device_remove_attrs(dev->bus, dev);