summaryrefslogtreecommitdiffstats
path: root/drivers/base
diff options
context:
space:
mode:
authorKay Sievers <kay.sievers@vrfy.org>2007-12-20 02:09:39 +0100
committerGreg Kroah-Hartman <gregkh@suse.de>2008-01-24 20:40:40 -0800
commitaf5ca3f4ec5cc4432a42a73b050dd8898ce8fd00 (patch)
tree3e5a3081b2802547f10da72c0026b4929d0e287b /drivers/base
parent528a4bf1d5ffed310d26fc1d82d45c02949f71cf (diff)
downloadkernel-crypto-af5ca3f4ec5cc4432a42a73b050dd8898ce8fd00.tar.gz
kernel-crypto-af5ca3f4ec5cc4432a42a73b050dd8898ce8fd00.tar.xz
kernel-crypto-af5ca3f4ec5cc4432a42a73b050dd8898ce8fd00.zip
Driver core: change sysdev classes to use dynamic kobject names
All kobjects require a dynamically allocated name now. We no longer need to keep track if the name is statically assigned, we can just unconditionally free() all kobject names on cleanup. Signed-off-by: Kay Sievers <kay.sievers@vrfy.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/base')
-rw-r--r--drivers/base/class.c2
-rw-r--r--drivers/base/cpu.c2
-rw-r--r--drivers/base/memory.c2
-rw-r--r--drivers/base/node.c2
-rw-r--r--drivers/base/sys.c1
5 files changed, 5 insertions, 4 deletions
diff --git a/drivers/base/class.c b/drivers/base/class.c
index 61fd26cc9f0..b962a76875d 100644
--- a/drivers/base/class.c
+++ b/drivers/base/class.c
@@ -466,7 +466,6 @@ static struct kset_uevent_ops class_uevent_ops = {
* entirely soon.
*/
static struct kset class_obj_subsys = {
- .kobj = { .k_name = "class_obj", },
.uevent_ops = &class_uevent_ops,
};
@@ -872,6 +871,7 @@ int __init classes_init(void)
/* ick, this is ugly, the things we go through to keep from showing up
* in sysfs... */
kset_init(&class_obj_subsys);
+ kobject_set_name(&class_obj_subsys.kobj, "class_obj");
if (!class_obj_subsys.kobj.parent)
class_obj_subsys.kobj.parent = &class_obj_subsys.kobj;
return 0;
diff --git a/drivers/base/cpu.c b/drivers/base/cpu.c
index 40545071e3c..c5885f5ce0a 100644
--- a/drivers/base/cpu.c
+++ b/drivers/base/cpu.c
@@ -14,7 +14,7 @@
#include "base.h"
struct sysdev_class cpu_sysdev_class = {
- set_kset_name("cpu"),
+ .name = "cpu",
};
EXPORT_SYMBOL(cpu_sysdev_class);
diff --git a/drivers/base/memory.c b/drivers/base/memory.c
index 7868707c7ed..7ae413fdd5f 100644
--- a/drivers/base/memory.c
+++ b/drivers/base/memory.c
@@ -26,7 +26,7 @@
#define MEMORY_CLASS_NAME "memory"
static struct sysdev_class memory_sysdev_class = {
- set_kset_name(MEMORY_CLASS_NAME),
+ .name = MEMORY_CLASS_NAME,
};
static const char *memory_uevent_name(struct kset *kset, struct kobject *kobj)
diff --git a/drivers/base/node.c b/drivers/base/node.c
index 88eeed72b5d..e59861f18ce 100644
--- a/drivers/base/node.c
+++ b/drivers/base/node.c
@@ -15,7 +15,7 @@
#include <linux/device.h>
static struct sysdev_class node_class = {
- set_kset_name("node"),
+ .name = "node",
};
diff --git a/drivers/base/sys.c b/drivers/base/sys.c
index e666441dd76..2f79c55acdc 100644
--- a/drivers/base/sys.c
+++ b/drivers/base/sys.c
@@ -136,6 +136,7 @@ int sysdev_class_register(struct sysdev_class * cls)
cls->kset.kobj.parent = &system_kset->kobj;
cls->kset.kobj.ktype = &ktype_sysdev_class;
cls->kset.kobj.kset = system_kset;
+ kobject_set_name(&cls->kset.kobj, cls->name);
return kset_register(&cls->kset);
}