summaryrefslogtreecommitdiffstats
path: root/drivers/base/bus.c
diff options
context:
space:
mode:
authorGreg Kroah-Hartman <gregkh@suse.de>2007-10-30 05:22:26 +0100
committerGreg Kroah-Hartman <gregkh@suse.de>2008-01-25 05:40:14 +0100
commit59a548338ac6c9d7549c54278d0f724088585928 (patch)
tree36d12d6d2d9b32584a06032b45a0009dd7210db5 /drivers/base/bus.c
parentkset: convert kernel_subsys to use kset_create (diff)
downloadlinux-59a548338ac6c9d7549c54278d0f724088585928.tar.xz
linux-59a548338ac6c9d7549c54278d0f724088585928.zip
kset: convert drivers/base/bus.c to use kset_create
Dynamically create the kset instead of declaring it statically. Cc: Kay Sievers <kay.sievers@vrfy.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/base/bus.c')
-rw-r--r--drivers/base/bus.c11
1 files changed, 7 insertions, 4 deletions
diff --git a/drivers/base/bus.c b/drivers/base/bus.c
index 630956037e18..e3b101077804 100644
--- a/drivers/base/bus.c
+++ b/drivers/base/bus.c
@@ -166,7 +166,7 @@ static struct kset_uevent_ops bus_uevent_ops = {
.filter = bus_uevent_filter,
};
-static decl_subsys(bus, &bus_uevent_ops);
+static struct kset *bus_kset;
#ifdef CONFIG_HOTPLUG
@@ -767,7 +767,7 @@ EXPORT_SYMBOL_GPL(device_reprobe);
#if 0
struct bus_type * find_bus(char * name)
{
- struct kobject * k = kset_find_obj(&bus_subsys.kset, name);
+ struct kobject * k = kset_find_obj(bus_kset, name);
return k ? to_bus(k) : NULL;
}
#endif /* 0 */
@@ -851,7 +851,7 @@ int bus_register(struct bus_type * bus)
if (retval)
goto out;
- bus->subsys.kobj.kset = &bus_subsys;
+ bus->subsys.kobj.kset = bus_kset;
bus->subsys.kobj.ktype = &bus_ktype;
retval = subsystem_register(&bus->subsys);
@@ -935,7 +935,10 @@ EXPORT_SYMBOL_GPL(bus_unregister_notifier);
int __init buses_init(void)
{
- return subsystem_register(&bus_subsys);
+ bus_kset = kset_create_and_add("bus", &bus_uevent_ops, NULL);
+ if (!bus_kset)
+ return -ENOMEM;
+ return 0;
}