From aebd0de8a804b8b1ea710f4974a4d525b6176308 Mon Sep 17 00:00:00 2001 From: Greg Kroah-Hartman Date: Thu, 1 Nov 2007 09:29:06 -0600 Subject: [PATCH] --- yaml --- r: 75751 b: refs/heads/master c: 881c6cfd7c5edfe6129006e2404654bfe5911050 h: refs/heads/master i: 75749: 4c3e14c76e1914a97aecc26aceecb72de6b3d79f 75747: c304d353388c03f8783cf593afc3799f079a6256 75743: df60b6e4f256ffda545850f76b7b5a18efdd92f2 v: v3 --- [refs] | 2 +- trunk/drivers/base/base.h | 2 +- trunk/drivers/base/core.c | 16 ++++++++-------- trunk/drivers/base/power/shutdown.c | 2 +- trunk/drivers/base/sys.c | 4 +--- 5 files changed, 12 insertions(+), 14 deletions(-) diff --git a/[refs] b/[refs] index b18a892c5c0a..b383b75522fb 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: b0d78e5549b44b3d64bf8b3ffe95280025ed102e +refs/heads/master: 881c6cfd7c5edfe6129006e2404654bfe5911050 diff --git a/trunk/drivers/base/base.h b/trunk/drivers/base/base.h index 10b2fb6c9ce6..7e309a49a711 100644 --- a/trunk/drivers/base/base.h +++ b/trunk/drivers/base/base.h @@ -44,4 +44,4 @@ extern char *make_class_name(const char *name, struct kobject *kobj); extern int devres_release_all(struct device *dev); -extern struct kset devices_subsys; +extern struct kset *devices_kset; diff --git a/trunk/drivers/base/core.c b/trunk/drivers/base/core.c index 7762ee86697d..d2de2d59af42 100644 --- a/trunk/drivers/base/core.c +++ b/trunk/drivers/base/core.c @@ -401,11 +401,8 @@ static ssize_t show_dev(struct device *dev, struct device_attribute *attr, static struct device_attribute devt_attr = __ATTR(dev, S_IRUGO, show_dev, NULL); -/* - * devices_subsys - structure to be registered with kobject core. - */ - -decl_subsys(devices, &device_uevent_ops); +/* kset to create /sys/devices/ */ +struct kset *devices_kset; /** @@ -525,7 +522,7 @@ static void klist_children_put(struct klist_node *n) void device_initialize(struct device *dev) { - dev->kobj.kset = &devices_subsys; + dev->kobj.kset = devices_kset; dev->kobj.ktype = &device_ktype; kobject_init(&dev->kobj); klist_init(&dev->klist_children, klist_children_get, @@ -563,7 +560,7 @@ static struct kobject *virtual_device_parent(struct device *dev) if (!virtual_dir) virtual_dir = kobject_create_and_add("virtual", - &devices_subsys.kobj); + &devices_kset->kobj); return virtual_dir; } @@ -1097,7 +1094,10 @@ struct device * device_find_child(struct device *parent, void *data, int __init devices_init(void) { - return subsystem_register(&devices_subsys); + devices_kset = kset_create_and_add("devices", &device_uevent_ops, NULL); + if (!devices_kset) + return -ENOMEM; + return 0; } EXPORT_SYMBOL_GPL(device_for_each_child); diff --git a/trunk/drivers/base/power/shutdown.c b/trunk/drivers/base/power/shutdown.c index 56e8eaaac012..f51cbc1d402c 100644 --- a/trunk/drivers/base/power/shutdown.c +++ b/trunk/drivers/base/power/shutdown.c @@ -34,7 +34,7 @@ void device_shutdown(void) { struct device * dev, *devn; - list_for_each_entry_safe_reverse(dev, devn, &devices_subsys.list, + list_for_each_entry_safe_reverse(dev, devn, &devices_kset->list, kobj.entry) { if (dev->bus && dev->bus->shutdown) { dev_dbg(dev, "shutdown\n"); diff --git a/trunk/drivers/base/sys.c b/trunk/drivers/base/sys.c index 7cf19fc318da..7693c95848e6 100644 --- a/trunk/drivers/base/sys.c +++ b/trunk/drivers/base/sys.c @@ -25,8 +25,6 @@ #include "base.h" -extern struct kset devices_subsys; - #define to_sysdev(k) container_of(k, struct sys_device, kobj) #define to_sysdev_attr(a) container_of(a, struct sysdev_attribute, attr) @@ -459,7 +457,7 @@ int sysdev_resume(void) int __init system_bus_init(void) { - system_subsys.kobj.parent = &devices_subsys.kobj; + system_subsys.kobj.parent = &devices_kset->kobj; return subsystem_register(&system_subsys); }