modprobe: remove flock() because it never worked anyway
commit4eb2fe1ade23669c0cafa78b6e88c2599d4a8a00
authorJon Masters <jcm@jonmasters.org>
Tue, 3 Mar 2009 01:32:24 +0000 (2 20:32 -0500)
committerJon Masters <jcm@jonmasters.org>
Tue, 3 Mar 2009 01:32:24 +0000 (2 20:32 -0500)
treeac87876ff4c3c5df0f347568ce54adcb7fe27745
parent12495fa97827ddb21b0b72239f49d5e67e8cd265
modprobe: remove flock() because it never worked anyway

We used to have a file lock/unlock using flock() and acquiring a "write"
lock on the module file prior to load/unload as a means to acquire an
exclusive access to the module file. Sounds good, right? The problem is
that this will instead block if anyone else is holding the file open in
userspace (as well as the intention of preventing concurrent modprobe).

We could just wait 5 seconds, print warnings, kill the offending other
process, or many other things. But since modprobe already works on a
read-only filesystem (by not taking the lock at all, allowing the
kernel to catch and prevent the concurrent load situation) we do
this in every case instead. If I get complaints, I'll try an
alternative mechanism instead - like a warning, kill, etc.

Signed-off-by: Jon Masters <jcm@jonmasters.org>
modprobe.c