summaryrefslogtreecommitdiffstats
path: root/fs
diff options
context:
space:
mode:
Diffstat (limited to 'fs')
-rw-r--r--fs/ocfs2/locks.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/fs/ocfs2/locks.c b/fs/ocfs2/locks.c
index d56f0079b858..b11acd34001a 100644
--- a/fs/ocfs2/locks.c
+++ b/fs/ocfs2/locks.c
@@ -52,6 +52,7 @@ static int ocfs2_do_flock(struct file *file, struct inode *inode,
52 if (lockres->l_flags & OCFS2_LOCK_ATTACHED && 52 if (lockres->l_flags & OCFS2_LOCK_ATTACHED &&
53 lockres->l_level > LKM_NLMODE) { 53 lockres->l_level > LKM_NLMODE) {
54 int old_level = 0; 54 int old_level = 0;
55 struct file_lock request;
55 56
56 if (lockres->l_level == LKM_EXMODE) 57 if (lockres->l_level == LKM_EXMODE)
57 old_level = 1; 58 old_level = 1;
@@ -66,11 +67,10 @@ static int ocfs2_do_flock(struct file *file, struct inode *inode,
66 * level. 67 * level.
67 */ 68 */
68 69
69 locks_lock_file_wait(file, 70 locks_init_lock(&request);
70 &(struct file_lock) { 71 request.fl_type = F_UNLCK;
71 .fl_type = F_UNLCK, 72 request.fl_flags = FL_FLOCK;
72 .fl_flags = FL_FLOCK 73 locks_lock_file_wait(file, &request);
73 });
74 74
75 ocfs2_file_unlock(file); 75 ocfs2_file_unlock(file);
76 } 76 }