Messages in this thread | | | Date | Wed, 19 Dec 2012 00:27:22 -0800 | From | Andrew Morton <> | Subject | Re: [rtc-linux] [PATCH] rtc: recycle id when unloading a rtc driver |
| |
On Wed, 19 Dec 2012 08:55:57 +0100 Alexander Holler <holler@ahsoftware.de> wrote:
> > > > I'm all confused. > > > > Lothar's patch simply reverts Vincent's patch. And that appears to be > > the correct thing to so, as the ida_simple_remove() in > > rtc_device_release() should be sufficient. > > > > But apparently that doesn't work, because Vincent was seeing the RTC > > ID's increment rather than getting reused. > > > > Is it the case that rtc_device_release() is not being called sometimes? > > If so, under what circumstances? > > Maybe something (sysfs or whatever) still has a reference to it. Vincent > should check that. > > But I'm sure the ID will be recycled with that put_device() in > unregister because I've got the same warning as Lothar did when > (porperly) removing an RTC (with kernel 3.7).
If, as appears to be the case, rtc_device_release() is not being called then we're also leaking memory. So yes please, it would be good if someone who can reproduce the IDs-dont-decrease problem could dive in and work out why ->release() isn't begin called.
| |