aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJaegeuk Kim <jaegeuk@kernel.org>2016-03-11 15:33:22 -0800
committerJaegeuk Kim <jaegeuk@kernel.org>2016-03-17 21:19:47 -0700
commit12bb0a8fd47e6020a7b52dc283a2d855f03d6ef5 (patch)
tree5d171f34fd57e28ca6b12a4425a840fdc4ec1bd6
parentf2fs: add missing argument to f2fs_setxattr stub (diff)
downloadlinux-dev-12bb0a8fd47e6020a7b52dc283a2d855f03d6ef5.tar.xz
linux-dev-12bb0a8fd47e6020a7b52dc283a2d855f03d6ef5.zip
f2fs: submit node page write bios when really required
If many threads calls fsync with data writes, we don't need to flush every bios having node page writes. The f2fs_wait_on_page_writeback will flush its bios when the page is really needed. Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
-rw-r--r--fs/f2fs/node.c12
1 files changed, 1 insertions, 11 deletions
diff --git a/fs/f2fs/node.c b/fs/f2fs/node.c
index 771166d6dfa6..118321bd1a7f 100644
--- a/fs/f2fs/node.c
+++ b/fs/f2fs/node.c
@@ -1236,7 +1236,7 @@ int sync_node_pages(struct f2fs_sb_info *sbi, nid_t ino,
pgoff_t index, end;
struct pagevec pvec;
int step = ino ? 2 : 0;
- int nwritten = 0, wrote = 0;
+ int nwritten = 0;
pagevec_init(&pvec, 0);
@@ -1326,8 +1326,6 @@ continue_unlock:
if (NODE_MAPPING(sbi)->a_ops->writepage(page, wbc))
unlock_page(page);
- else
- wrote++;
if (--wbc->nr_to_write == 0)
break;
@@ -1345,14 +1343,6 @@ continue_unlock:
step++;
goto next_step;
}
-
- if (wrote) {
- if (ino)
- f2fs_submit_merged_bio_cond(sbi, NULL, NULL,
- ino, NODE, WRITE);
- else
- f2fs_submit_merged_bio(sbi, NODE, WRITE);
- }
return nwritten;
}