diff options
Diffstat (limited to 'fs/gfs2/file.c')
| -rw-r--r-- | fs/gfs2/file.c | 2 | 
1 files changed, 1 insertions, 1 deletions
| diff --git a/fs/gfs2/file.c b/fs/gfs2/file.c index a6abbae8a278..e6dd2aec6f82 100644 --- a/fs/gfs2/file.c +++ b/fs/gfs2/file.c | |||
| @@ -640,7 +640,7 @@ static int gfs2_lock(struct file *file, int cmd, struct file_lock *fl) | |||
| 640 | 640 | ||
| 641 | if (!(fl->fl_flags & FL_POSIX)) | 641 | if (!(fl->fl_flags & FL_POSIX)) | 
| 642 | return -ENOLCK; | 642 | return -ENOLCK; | 
| 643 | if (__mandatory_lock(&ip->i_inode)) | 643 | if (__mandatory_lock(&ip->i_inode) && fl->fl_type != F_UNLCK) | 
| 644 | return -ENOLCK; | 644 | return -ENOLCK; | 
| 645 | 645 | ||
| 646 | if (cmd == F_CANCELLK) { | 646 | if (cmd == F_CANCELLK) { | 
