Greg KH wrote: > On Wed, May 09, 2007 at 03:30:41PM +0200, Tejun Heo wrote: >> Chris Rankin wrote: >>> --- Tejun Heo <[EMAIL PROTECTED]> wrote: >>>> So, we can fix the problem Chris is seeing by breaking module unload (by >>>> allowing it to unload too early). It doesn't sound too hot but module >>>> unloading race is much less likely than sysfs node deletion/open race. >>> Yikes! Just temporary breakage, I hope :-)!! The only modules I unload on a >>> regular basis these >>> days are things like "microcode", which the init scripts take care of as >>> part of the boot-up >>> process. >> Okay, here's a half-assed fix. With this patch applied, if you try to >> unload a module while you're opening it's dev attribute, kernel will >> oops later when the file is accessed or closed later but it should fix >> the bug winecfg triggers. I really dunno how to fix this the right way >> in the stable kernel. Better ideas? Anyone? > > This looks like the correct fix, the only reason I made this dynamic was > to properly set up the module owner. And now that you have removed that > link in your sysfs rework, it can go and become static again. > > Oh, and this isn't a "device node", it's just a text file that contains > the major:minor number for a device node to be created from. > > So, care to fix up the class code too and send a patch with a > signed-off-by:?
I think the proper fix for -stable is to free the structure in device_release(). I asked Chris to test it. After he confirms, I'll send a proper patch with S-O-B. For -mm, yeap, we can simply make the whole thing static. I'll send patch for that soon. Thanks. -- tejun - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/