When opening and flocking a new file (that is, one that doesn't pre-exist), a second client trying to open and lock a file of the same name does not block waiting for the lock. If the file already exists, the second file lock blocks as expected. Two processes on the same client do correctly block on the file if it's on a glusterfs mount. server.vol: volume share type storage/posix option directory /exports/test end-volume volume brick type features/posix-locks subvolumes share end-volume volume server type protocol/server option transport-type tcp/server option listen-port 6996 subvolumes brick option auth.ip.brick.allow * end-volume client.vol: volume brick type protocol/client option transport-type tcp/client option remote-host 172.16.1.81 option remote-port 6996 option remote-subvolume brick end-volume Test program: #!/usr/bin/perl $| = 1; use Fcntl ':flock'; my $file = shift or "./testlockfile"; my $delay = shift or 10; my $hostname = `hostname`; chomp($hostname); print "opening file\n"; open(my $testfile, '>>', $file) or die("$!\n"); print localtime(time())." :: opened file\n"; print localtime(time())." :: locking file\n"; flock($testfile, LOCK_EX); print localtime(time())." :: locked file\n"; print $testfile "$hostname start ".localtime(time())."\n"; sleep $delay; print $testfile "$hostname end ".localtime(time())."\n"; flock($testfile, LOCK_UN); print localtime(time())." :: unlocked file\n"; exit 0; Command line (run from each client): /mnt/glusterfs/testlock.pl /mnt/glusterfs/testfile7 5 -- - Kevan Benson - A-1 Networks