From: Pavel Emelyanov The __mandatory_lock(inode) function makes the same check, but makes the code more readable. Signed-off-by: Pavel Emelyanov Cc: Steven Whitehouse Signed-off-by: Andrew Morton --- fs/gfs2/ops_file.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff -puN fs/gfs2/ops_file.c~gfs2-cleanup-explicit-check-for-mandatory-locks fs/gfs2/ops_file.c --- a/fs/gfs2/ops_file.c~gfs2-cleanup-explicit-check-for-mandatory-locks +++ a/fs/gfs2/ops_file.c @@ -535,7 +535,7 @@ static int gfs2_lock(struct file *file, if (!(fl->fl_flags & FL_POSIX)) return -ENOLCK; - if ((ip->i_inode.i_mode & (S_ISGID | S_IXGRP)) == S_ISGID) + if (__mandatory_lock(&ip->i_inode)) return -ENOLCK; if (sdp->sd_args.ar_localflocks) { @@ -636,7 +636,7 @@ static int gfs2_flock(struct file *file, if (!(fl->fl_flags & FL_FLOCK)) return -ENOLCK; - if ((ip->i_inode.i_mode & (S_ISGID | S_IXGRP)) == S_ISGID) + if (__mandatory_lock(&ip->i_inode)) return -ENOLCK; if (sdp->sd_args.ar_localflocks) _