aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChao Yu <chao2.yu@samsung.com>2015-10-28 17:56:14 +0800
committerMister Oyster <oysterized@gmail.com>2017-04-13 12:32:25 +0200
commitfdcaf816f91926fa6786b366e6fa5d2f5b868742 (patch)
tree9043ecb4c7b777856c03aaeca47428c45219d14e
parent2c3221c792cf66a4f47345f98a9b639de23c3827 (diff)
f2fs: commit atomic written page in LFS mode
We should always commit atomic written pages in LFS mode, otherwise data will become corrupted if we encounter suddent power cut after partial pages committed in IPU mode. Signed-off-by: Chao Yu <chao2.yu@samsung.com> Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
-rw-r--r--fs/f2fs/data.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/fs/f2fs/data.c b/fs/f2fs/data.c
index da2fdc5f9..c6e342096 100644
--- a/fs/f2fs/data.c
+++ b/fs/f2fs/data.c
@@ -1084,6 +1084,7 @@ int do_write_data_page(struct f2fs_io_info *fio)
*/
if (unlikely(fio->blk_addr != NEW_ADDR &&
!is_cold_data(page) &&
+ !IS_ATOMIC_WRITTEN_PAGE(page) &&
need_inplace_update(inode))) {
rewrite_data_page(fio);
set_inode_flag(F2FS_I(inode), FI_UPDATE_WRITE);