]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
ocfs2: _really_ sync the right range
authorAl Viro <viro@zeniv.linux.org.uk>
Wed, 8 Apr 2015 21:00:32 +0000 (17:00 -0400)
committerZefan Li <lizefan@huawei.com>
Fri, 19 Jun 2015 03:40:31 +0000 (11:40 +0800)
commitdfd04b4f2744170085f2dfcc66b7888fb130e0cc
tree03e7fac79a7194eaa04ad1332d82399617a487ee
parent419d4c989459c5fa2d3fa42c061c097e53dcaf19
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: Zefan Li <lizefan@huawei.com>
fs/ocfs2/file.c