On Thu, Dec 27, 2007 at 03:22:28PM -0800, Christoph Lameter wrote: > > a) remove symlink when slab goes away > > Ok. Need to think about how to code that.
Huh? Just call it from kmem_cache_destroy(); what business does that symlink have being around after that point? > > b) instead of kfree() in slab removal do kobject_put() if you have sysfs > > stuff > > Hmmmm.... Okay. Patch follows but its strange to do a kobject_put after a > kobject_del(). kobject_del() undoes the effect of kobject_add(). And then you are left with the refcount you had before kobject_add(), i.e. from kobject_init(). Think of it that way: kobject refcount controls the lifetime of structure the sucker's embedded into. Depending on kobject methods, you might be unable to do cleanup of non-kobject parts of that animal until after kobject_del(). IOW, you _can't_ have kobject_del() dropping the (hopefully) final reference to kobject - only the caller knows what might have to be done in between. -- 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/