On Fri, Mar 30, 2007 at 07:46:19PM +0200, Ingo Molnar wrote:
Sorry, no, I realize how this could happen in the driver, I just don't
see what in the driver core would be keeping this driver from having
it's release function called at the unregister() time.
Something has grabbed a reference to the driver...
Oh wait, is this code a module or built into the kernel?
If it's built in, there's still a reference counting bug in the
module/driver hookup logic as we really don't have a "module" yet we are
still thinking we do as we represent it in /sys/module and create the
linkages.
I created some horrible patches to try to track this down, as it was
reported on lkml (look for "Subject: kref refcounting breakage in mainline" )
but never got it working correctly.
I bet if you build that code as a module, it will work just fine, can
you try it?
Kay, did you ever get a chance to look into this reference counting
issue?
thanks,
greg k-h
-