--- x/lib/kobject.c +++ y/lib/kobject.c @@ -218,7 +218,7 @@ static int kobject_add_internal(struct k /* join kset if set, use it as parent if we do not already have one */ if (kobj->kset) { if (!parent) - parent = kobject_get(&kobj->kset->kobj); + parent = kobject_get(kobj->kset->kobj.parent); kobj_kset_join(kobj); kobj->parent = parent; }