From: Cornelia Huck On Wed, 19 Sep 2007 20:02:05 +0200, Cornelia Huck wrote: > > kobject drivers: cleaning up > > kobject '' does not have a release() function, if this is not a directory kobject, it is broken and must be fixed. > > printing this debug message, it looks a bit odd :)> kobject: Temporarily save k_name on cleanup for debug message. Signed-off-by: Cornelia Huck Signed-off-by: Andrew Morton --- lib/kobject.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff -puN lib/kobject.c~kobject-temporarily-save-k_name-on-cleanup-for-debug-message lib/kobject.c --- a/lib/kobject.c~kobject-temporarily-save-k_name-on-cleanup-for-debug-message +++ a/lib/kobject.c @@ -498,9 +498,9 @@ void kobject_cleanup(struct kobject * ko struct kobj_type * t = get_ktype(kobj); struct kset * s = kobj->kset; struct kobject * parent = kobj->parent; + const char *k_name = kobj->k_name; pr_debug("kobject %s: cleaning up\n",kobject_name(kobj)); - kfree(kobj->k_name); kobj->k_name = NULL; if (t && t->release) t->release(kobj); @@ -508,8 +508,8 @@ void kobject_cleanup(struct kobject * ko pr_debug("kobject '%s' does not have a release() function, " "if this is not a directory kobject, it is broken " "and must be fixed.\n", - kobject_name(kobj)); - + k_name); + kfree(k_name); if (s) kset_put(s); kobject_put(parent); _