Messages in this thread | | | Date | Sat, 11 Feb 2006 23:27:52 -0600 | From | Nathan Lynch <> | Subject | Re: sysfs-related oops during module unload (2.6.16-rc2) |
| |
Greg KH wrote: > 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, but no, I get the same oops. The refcnt attribute isn't part of the modinfo_attrs array.
> 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/
| |