aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/base/core.c
diff options
context:
space:
mode:
authorGreg Kroah-Hartman <gregkh@suse.de>2007-10-16 12:11:44 -0400
committerGreg Kroah-Hartman <gregkh@suse.de>2008-01-24 23:40:10 -0500
commit3514faca19a6fdc209734431c509631ea92b094e (patch)
treef6d102e6dec276f8e8d1044b47c74a02b901554f /drivers/base/core.c
parentc11c4154e7ff4cebfadad849b1e22689d759c3f4 (diff)
kobject: remove struct kobj_type from struct kset
We don't need a "default" ktype for a kset. We should set this explicitly every time for each kset. This change is needed so that we can make ksets dynamic, and cleans up one of the odd, undocumented assumption that the kset/kobject/ktype model has. This patch is based on a lot of help from Kay Sievers. Nasty bug in the block code was found by Dave Young <hidave.darkstar@gmail.com> Cc: Kay Sievers <kay.sievers@vrfy.org> Cc: Dave Young <hidave.darkstar@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/base/core.c')
-rw-r--r--drivers/base/core.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/base/core.c b/drivers/base/core.c
index ce6b64c489ad..c8f2ac03d46d 100644
--- a/drivers/base/core.c
+++ b/drivers/base/core.c
@@ -405,7 +405,7 @@ static struct device_attribute devt_attr =
405 * devices_subsys - structure to be registered with kobject core. 405 * devices_subsys - structure to be registered with kobject core.
406 */ 406 */
407 407
408decl_subsys(devices, &device_ktype, &device_uevent_ops); 408decl_subsys(devices, &device_uevent_ops);
409 409
410 410
411/** 411/**
@@ -525,7 +525,8 @@ static void klist_children_put(struct klist_node *n)
525 525
526void device_initialize(struct device *dev) 526void device_initialize(struct device *dev)
527{ 527{
528 kobj_set_kset_s(dev, devices_subsys); 528 dev->kobj.kset = &devices_subsys;
529 dev->kobj.ktype = &device_ktype;
529 kobject_init(&dev->kobj); 530 kobject_init(&dev->kobj);
530 klist_init(&dev->klist_children, klist_children_get, 531 klist_init(&dev->klist_children, klist_children_get,
531 klist_children_put); 532 klist_children_put);