Messages in this thread Patch in this message | | | Date | Sat, 11 Feb 2006 14:45:26 -0800 | From | Greg KH <> | Subject | Re: sysfs-related oops during module unload (2.6.16-rc2) |
| |
On Sat, Feb 11, 2006 at 04:03:53PM -0600, Nathan Lynch wrote: > If the refcnt attribute of a module is open when the module is > unloaded, we get an oops when the file is closed. I used ide_cd for > this report but I don't think the oops is caused by the driver itself. > This bug seems to be restricted to the /sys/module hierarchy; it > doesn't happen with /sys/class etc. > > I suspect it's an extra put or a missing get somewhere, but the fix > isn't obvious to me after looking at it for a little while, so I'm > punting. > > I'm pretty sure this happens with 2.6.15; I can double-check if > needed.
Ugh, we aren't setting the owner of these fields properly, good catch.
Does the patch below (built tested only), solve this for you?
thanks,
greg k-h
-----------------
kernel/module.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-)
--- gregkh-2.6.orig/kernel/module.c 2006-01-17 08:27:49.000000000 -0800 +++ gregkh-2.6/kernel/module.c 2006-02-11 14:44:19.000000000 -0800 @@ -1085,8 +1085,10 @@ for (i = 0; (attr = modinfo_attrs[i]) && !error; i++) { if (!attr->test || - (attr->test && attr->test(mod))) + (attr->test && attr->test(mod))) { + attr->attr.owner = mod; error = sysfs_create_file(&mod->mkobj.kobj,&attr->attr); + } } return error; } - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |