[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <E1Idkor-0002v6-00@dorka.pomaz.szeredi.hu>
Date: Fri, 05 Oct 2007 12:54:09 +0200
From: Miklos Szeredi <miklos@...redi.hu>
To: wfg@...l.ustc.edu.cn
CC: miklos@...redi.hu, linux-kernel@...r.kernel.org, gregkh@...e.de,
akpm@...ux-foundation.org
Subject: Re: BUG on unloading the fuse module
> > > In 2.6.23-rc8-mm2, the fuse module always bugs on unloading.
> >
> > It's fixed in Greg's patch queue.
> >
> > This patch against -mm will also fix it.
>
> Oh no, it panics:
How about this one?
Thanks,
Miklos
---
Index: linux/lib/kobject.c
===================================================================
--- linux.orig/lib/kobject.c 2007-10-02 17:20:04.000000000 +0200
+++ linux/lib/kobject.c 2007-10-05 12:52:52.000000000 +0200
@@ -498,18 +498,18 @@ 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));
- kobj->k_name = NULL;
- if (t && t->release)
+ if (t && t->release) {
+ const char *k_name = kobj->k_name;
+ kobj->k_name = NULL;
t->release(kobj);
- else
+ kfree(k_name);
+ } else
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",
- k_name);
- kfree(k_name);
+ kobj->k_name);
if (s)
kset_put(s);
kobject_put(parent);
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists