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

Commit 96a1cc73 authored by Wengang Wang's avatar Wengang Wang Committed by Joel Becker
Browse files

ocfs2: Clean up the checks for CoW and direct I/O.



When ocfs2 has to do CoW for refcounted extents, we disable direct I/O
and go through the buffered I/O path.  This makes the combined check
easier to read.

Signed-off-by: default avatarWengang Wang <wen.gang.wang@oracle.com>
Signed-off-by: default avatarJoel Becker <joel.becker@oracle.com>
parent b89c5428
Loading
Loading
Loading
Loading
+2 −4
Original line number Original line Diff line number Diff line
@@ -1836,6 +1836,8 @@ static int ocfs2_prepare_inode_for_write(struct dentry *dentry,
							       &meta_level);
							       &meta_level);
			if (has_refcount)
			if (has_refcount)
				*has_refcount = 1;
				*has_refcount = 1;
			if (direct_io)
				*direct_io = 0;
		}
		}


		if (ret < 0) {
		if (ret < 0) {
@@ -1859,10 +1861,6 @@ static int ocfs2_prepare_inode_for_write(struct dentry *dentry,
			break;
			break;
		}
		}


		if (has_refcount && *has_refcount == 1) {
			*direct_io = 0;
			break;
		}
		/*
		/*
		 * Allowing concurrent direct writes means
		 * Allowing concurrent direct writes means
		 * i_size changes wouldn't be synchronized, so
		 * i_size changes wouldn't be synchronized, so