[Samba] blocking file locks

Larry Dickson ldickson at cuttedge.com
Tue Apr 21 17:53:37 GMT 2009


Hello all,

As a Samba programming newbie, I've run onto a question that doesn't have an
obvious answer in FAQ or googled literature. I need to lock large numbers of
files on the server, and have Samba open requests block until they are
released. I found references to "blocking locks" in references such as
"Using Samba" (O'Reilly, 1999, 2003)

http://oreilly.com/catalog/samba/chapter/book/ch05_05.html

but these refer to range locks, which are overkill for my application (I
only need to check on open, not on every IO).

Deny modes would seem to fill the bill, but I can't find whether blocking
locks would work for them, and also they do not seem to be Linux-compatible
on the server, and I suspect I may need that for efficiency's sake (a lot of
files are being locked/unlocked). I downloaded samba-latest.tar.gz and
noticed that source/smbd/blocking.c seems to respond to these by setting
LOCK_MAND versions of flock states, which are available only for "sys_flock"
and rumored not to affect normal Linux programming.

Can file locks block a Samba open request? Can they be set by, or made to
affect, Linux programming on the server (I don't care about NFS file opens,
only local opens on the server)? Does this drive special Samba kernel code,
or does smbd just operate in user space?

TIA,

Larry Dickson
Cutting Edge Networked Storage


More information about the samba mailing list