Skip to content

Commit

Permalink
ocfs2: properly initial file_lock used for unlock.
Browse files Browse the repository at this point in the history
Rather than assuming all-zeros is sufficient, use the available API to
initialize the file_lock structure use for unlock.  VFS-level changes
will soon make it important that the list_heads in file_lock are
always properly initialized.

Signed-off-by: NeilBrown <neilb@suse.com>
Reviewed-by: J. Bruce Fields <bfields@redhat.com>
Signed-off-by: Jeff Layton <jlayton@kernel.org>
  • Loading branch information
NeilBrown authored and Jeff Layton committed Nov 30, 2018
1 parent 4d62d3f commit 4316c3c
Showing 1 changed file with 5 additions and 5 deletions.
10 changes: 5 additions & 5 deletions fs/ocfs2/locks.c
Original file line number Diff line number Diff line change
Expand Up @@ -52,6 +52,7 @@ static int ocfs2_do_flock(struct file *file, struct inode *inode,
if (lockres->l_flags & OCFS2_LOCK_ATTACHED &&
lockres->l_level > LKM_NLMODE) {
int old_level = 0;
struct file_lock request;

if (lockres->l_level == LKM_EXMODE)
old_level = 1;
Expand All @@ -66,11 +67,10 @@ static int ocfs2_do_flock(struct file *file, struct inode *inode,
* level.
*/

locks_lock_file_wait(file,
&(struct file_lock) {
.fl_type = F_UNLCK,
.fl_flags = FL_FLOCK
});
locks_init_lock(&request);
request.fl_type = F_UNLCK;
request.fl_flags = FL_FLOCK;
locks_lock_file_wait(file, &request);

ocfs2_file_unlock(file);
}
Expand Down

0 comments on commit 4316c3c

Please sign in to comment.