Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 4316c3c6 authored by NeilBrown's avatar NeilBrown Committed by Jeff Layton
Browse files

ocfs2: properly initial file_lock used for unlock.



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: default avatarNeilBrown <neilb@suse.com>
Reviewed-by: default avatarJ. Bruce Fields <bfields@redhat.com>
Signed-off-by: default avatarJeff Layton <jlayton@kernel.org>
parent 4d62d3f7
Loading
Loading
Loading
Loading
+5 −5
Original line number Diff line number Diff line
@@ -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;
@@ -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);
	}