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 [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[Index of Archives]
[Kernel Newbies]
[Netfilter]
[Bugtraq]
[Photo]
[Stuff]
[Gimp]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Video 4 Linux]
[Linux for the blind]
[Linux Resources]