ocfs2: _really_ sync the right range
authorAl Viro <viro@zeniv.linux.org.uk>
Wed, 8 Apr 2015 21:00:32 +0000 (17:00 -0400)
committerBen Hutchings <ben@decadent.org.uk>
Sat, 9 May 2015 22:16:35 +0000 (23:16 +0100)
commitdc6f158c9cea7ff050d79f8f6870eb0362fa4f0c
tree1f90d82ee27fa10f45653f147468bfac48985a4d
parent13b9af38c8978369bb8da1ea5cc51f17e64a87c3
ocfs2: _really_ sync the right range

commit 64b4e2526d1cf6e6a4db6213d6e2b6e6ab59479a upstream.

"ocfs2 syncs the wrong range" had been broken; prior to it the
code was doing the wrong thing in case of O_APPEND, all right,
but _after_ it we were syncing the wrong range in 100% cases.
*ppos, aka iocb->ki_pos is incremented prior to that point,
so we are always doing sync on the area _after_ the one we'd
written to.

Spotted by Joseph Qi <joseph.qi@huawei.com> back in January;
unfortunately, I'd missed his mail back then ;-/

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
fs/ocfs2/file.c