Thread (1 message) 1 message, 1 author, 2011-11-17

Re: fallocate vs O_(D)SYNC

From: Joel Becker <jlbec@evilplan.org>
Date: 2011-11-17 10:16:36
Also in: linux-btrfs

On Wed, Nov 16, 2011 at 12:03:10PM -0800, Mark Fasheh wrote:
On Wed, Nov 16, 2011 at 11:35:40AM -0800, Mark Fasheh wrote:
quoted
quoted
We should do it per FS though, I'll patch up btrfs.
I agree about doing it per FS. Ocfs2 just needs a one-liner to mark the
journal transaction as synchronous.
Joel, here's an (untested) patch to fix this in Ocfs2.
	--Mark

--
Mark Fasheh

From: Mark Fasheh <redacted>

ocfs2: honor O_(D)SYNC flag in fallocate

We need to sync the transaction which updates i_size if the file is marked
as needing sync semantics.

Signed-off-by: Mark Fasheh <redacted>
	Makes sense to me.  

Joel
quoted hunk
---
 fs/ocfs2/file.c |    3 +++
 1 files changed, 3 insertions(+), 0 deletions(-)
diff --git a/fs/ocfs2/file.c b/fs/ocfs2/file.c
index de4ea1a..cac00b4 100644
--- a/fs/ocfs2/file.c
+++ b/fs/ocfs2/file.c
@@ -1950,6 +1950,9 @@ static int __ocfs2_change_file_space(struct file *file, struct inode *inode,
 	if (ret < 0)
 		mlog_errno(ret);
 
+	if (file->f_flags & O_SYNC)
+		handle->h_sync = 1;
+
 	ocfs2_commit_trans(osb, handle);
 
 out_inode_unlock:
-- 
1.7.6
-- 

Life's Little Instruction Book #347

	"Never waste the oppourtunity to tell someone you love them."

			http://www.jlbec.org/
			jlbec@evilplan.org
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help