On Wed, Oct 27, 2010 at 11:54:55 +0100, Martyn Welch wrote: > On 26/10/10 02:10, Emilio G. Cota wrote: > > From: Emilio G. Cota <cota@xxxxxxxxx> > > > > Without it we get 32 warnings, one per device being released, when > > removing a bridge module. > > > > After applying this patch, bridge modules can at last be removed > > without any apparent hiccup. > > > > [Note: tested only on the tsi148, it's the only bridge I've got] > > > > I guess this is an artifact of the current lack of refcounting? No, that's orthogonal to this. This has to do with the way the devices are allocated. > This is definitely an issue, however I don't think masking it by adding > an empty function is the correct way to go. We're not masking anything. The release method is there to free the struct it protects when its refcount goes to zero; however, in this case the struct wasn't allocated dynamically--the 32 devices are stored in struct vme_bridge in an array--and therefore there's nothing to do in .release, since struct vme_bridge is freed elsewhere. While it's true that empty .release methods are usually frowned upon (as stated in Documentation/kobject.txt), due to the way things are done here it actually makes sense to have an empty .release. Hope this helps Emilio _______________________________________________ devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxx http://driverdev.linuxdriverproject.org/mailman/listinfo/devel