Messages in this thread Patch in this message | | | From | Neil Brown <> | Date | Tue, 23 Mar 2010 19:54:33 +1100 | Subject | [PATCH] ocfs2: Skip check for mandatory locks when unlocking |
| |
The nfs bug fixed by 0800c5f7a499a8961c3868e95cc4cf1715166457 and the 9p bug fixed by f78233dd44a110c574fe760ad6f9c1e8741a0d00 and the gfs2 bug fixed by 720e7749279bde0d08684b1bb4e7a2eedeec6394
also needs to be fixed for ocfs2. This patch does that.
Hopefully this is the last filesystem with this bug :-)
Signed-off-by: NeilBrown <neilb@suse.de> Cc: stable@kernel.org
diff --git a/fs/ocfs2/locks.c b/fs/ocfs2/locks.c index 544ac62..923d3d8 100644 --- a/fs/ocfs2/locks.c +++ b/fs/ocfs2/locks.c @@ -113,7 +113,8 @@ int ocfs2_flock(struct file *file, int cmd, struct file_lock *fl) if (!(fl->fl_flags & FL_FLOCK)) return -ENOLCK; - if (__mandatory_lock(inode)) + if (__mandatory_lock(inode) && + fl->fl_type != F_UNLCK) return -ENOLCK; if ((osb->s_mount_opt & OCFS2_MOUNT_LOCALFLOCKS) ||
| |