diff options
Diffstat (limited to 'fs')
-rw-r--r-- | fs/nfs/file.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/fs/nfs/file.c b/fs/nfs/file.c index eb5cd4c3bbfd..7a79fbe9f539 100644 --- a/fs/nfs/file.c +++ b/fs/nfs/file.c | |||
@@ -509,7 +509,8 @@ static int nfs_lock(struct file *filp, int cmd, struct file_lock *fl) | |||
509 | return -EINVAL; | 509 | return -EINVAL; |
510 | 510 | ||
511 | /* No mandatory locks over NFS */ | 511 | /* No mandatory locks over NFS */ |
512 | if ((inode->i_mode & (S_ISGID | S_IXGRP)) == S_ISGID) | 512 | if ((inode->i_mode & (S_ISGID | S_IXGRP)) == S_ISGID && |
513 | fl->fl_type != F_UNLCK) | ||
513 | return -ENOLCK; | 514 | return -ENOLCK; |
514 | 515 | ||
515 | if (IS_GETLK(cmd)) | 516 | if (IS_GETLK(cmd)) |