aboutsummaryrefslogtreecommitdiff
path: root/fs/f2fs/data.c
diff options
context:
space:
mode:
authorGravatar Chao Yu <yuchao0@huawei.com> 2017-01-07 18:50:26 +0800
committerGravatar Jaegeuk Kim <jaegeuk@kernel.org> 2017-02-22 18:48:48 -0800
commit5fe457430e554a2f5188f13c1a2e36ad845640c5 (patch)
treeb20d30d298e89235c3d55fe3a1ef7835d834bcd5 /fs/f2fs/data.c
parentf2fs: clean up with list_{first, last}_entry (diff)
downloadlinux-5fe457430e554a2f5188f13c1a2e36ad845640c5.tar.gz
linux-5fe457430e554a2f5188f13c1a2e36ad845640c5.tar.bz2
linux-5fe457430e554a2f5188f13c1a2e36ad845640c5.zip
f2fs: introduce FI_ATOMIC_COMMIT
This patch introduces a new flag to indicate inode status of doing atomic write committing, so that, we can keep atomic write status for inode during atomic committing, then we can skip GCing pages of atomic write inode, that avoids random GCed datas being mixed with current transaction, so isolation of transaction can be kept. Signed-off-by: Chao Yu <yuchao0@huawei.com> Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
Diffstat (limited to 'fs/f2fs/data.c')
-rw-r--r--fs/f2fs/data.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/f2fs/data.c b/fs/f2fs/data.c
index ab2008dea921..848d110dc1ca 100644
--- a/fs/f2fs/data.c
+++ b/fs/f2fs/data.c
@@ -1977,7 +1977,7 @@ static int f2fs_set_data_page_dirty(struct page *page)
if (!PageUptodate(page))
SetPageUptodate(page);
- if (f2fs_is_atomic_file(inode)) {
+ if (f2fs_is_atomic_file(inode) && !f2fs_is_commit_atomic_write(inode)) {
if (!IS_ATOMIC_WRITTEN_PAGE(page)) {
register_inmem_page(inode, page);
return 1;