summaryrefslogtreecommitdiffstats
path: root/fs/compat.c
diff options
context:
space:
mode:
authorJeff Layton <jlayton@redhat.com>2014-03-10 09:54:19 -0400
committerJeff Layton <jlayton@redhat.com>2014-03-31 08:24:43 -0400
commit29723adee11804b548903ddb1db666cf4a60f60e (patch)
tree15ffb52af6c920d52cb53b970c9d6a21fe6cc2b1 /fs/compat.c
parentd7a06983a01a33605191c0766857b832ac32a2b6 (diff)
downloadlinux-29723adee11804b548903ddb1db666cf4a60f60e.tar.gz
linux-29723adee11804b548903ddb1db666cf4a60f60e.tar.bz2
linux-29723adee11804b548903ddb1db666cf4a60f60e.zip
locks: make locks_mandatory_area check for file-private locks
Allow locks_mandatory_area() to handle file-private locks correctly. If there is a file-private lock set on an open file and we're doing I/O via the same, then that should not cause anything to block. Handle this by first doing a non-blocking FL_ACCESS check for a file-private lock, and then fall back to checking for a classic POSIX lock (and possibly blocking). Note that this approach is subject to the same races that have always plagued mandatory locking on Linux. Reported-by: Trond Myklebust <trond.myklebust@primarydata.com> Signed-off-by: Jeff Layton <jlayton@redhat.com>
Diffstat (limited to 'fs/compat.c')
0 files changed, 0 insertions, 0 deletions