diff options
author | Ryan Ding <ryan.ding@oracle.com> | 2016-03-25 22:21:01 +0100 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2016-03-26 00:37:42 +0100 |
commit | 46e625565950c5f31a193c4bbcfdef3fdc7235bf (patch) | |
tree | 6c3c4004327a03b0df445a602d2ca55c86c00568 /fs/ocfs2/ioctl.c | |
parent | ocfs2: test target page before change it (diff) | |
download | linux-46e625565950c5f31a193c4bbcfdef3fdc7235bf.tar.xz linux-46e625565950c5f31a193c4bbcfdef3fdc7235bf.zip |
ocfs2: do not change i_size in write_end for direct io
To support direct io in ocfs2_write_begin_nolock & ocfs2_write_end_nolock.
Append direct io do not change i_size in get block phase. It only move
to orphan when starting write. After data is written to disk, it will
delete itself from orphan and update i_size. So skip i_size change
section in write_begin for direct io.
And when there is no extents alloc, no meta data changes needed for
direct io (since write_begin start trans for 2 reason: alloc extents &
change i_size. Now none of them needed). So we can skip start trans
procedure.
Signed-off-by: Ryan Ding <ryan.ding@oracle.com>
Reviewed-by: Junxiao Bi <junxiao.bi@oracle.com>
Cc: Joseph Qi <joseph.qi@huawei.com>
Cc: Mark Fasheh <mfasheh@suse.de>
Cc: Joel Becker <jlbec@evilplan.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'fs/ocfs2/ioctl.c')
0 files changed, 0 insertions, 0 deletions