Messages in this thread | | | Date | Mon, 16 Apr 2007 19:36:19 +0200 | From | Cornelia Huck <> | Subject | [Patch -mm 0/3] RFC: module unloading vs. release function |
| |
Hi,
based on the discussion in "How should an exit routine wait for release() callbacks?", I've cooked up some patches that make module unload wait until the last reference for a kobject has been dropped. This should plug the "release function in already deleted module" race; however, if the last kobject_put() from the module containing the release function is not in the module's exit function, there's still a small window (not sure if and how to plug this).
This new refcounting still needs to be exploited (i. e. a driver actually setting kobject->owner). Whether we need to set the owner for kobject or if for device would be sufficient is also still open to debate.
[1/3] Use module->mkobj even if !CONFIG_SYSFS. [2/3] Expose module->mkobj reference count. [3/3] Introduce kobject->owner for refcounting.
Patchset is only slightly tested, but comments are welcome :) - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |