diff options
author | Jaegeuk Kim <jaegeuk@kernel.org> | 2015-10-08 10:40:07 -0700 |
---|---|---|
committer | Jaegeuk Kim <jaegeuk@kernel.org> | 2015-10-12 13:38:02 -0700 |
commit | a125702326d9c3b753fe9c9b9727d3b3dd1cba4a (patch) | |
tree | 7c6407982fb0db047c1a5233eed3c24b4df192f9 /fs/f2fs/node.c | |
parent | c912a8298c16ef15aa2b7203022c935f439f488b (diff) | |
download | lwn-a125702326d9c3b753fe9c9b9727d3b3dd1cba4a.tar.gz lwn-a125702326d9c3b753fe9c9b9727d3b3dd1cba4a.zip |
Revert "f2fs: do not skip dentry block writes"
The periodic checkpoint can resolve the previous issue.
So, now we can use this again to improve the reported performance regression:
https://lkml.org/lkml/2015/10/8/20
This reverts commit 15bec0ff5a9ba6d203178fa8772259df6207942a.
Diffstat (limited to 'fs/f2fs/node.c')
-rw-r--r-- | fs/f2fs/node.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/fs/f2fs/node.c b/fs/f2fs/node.c index 1fe49ca20757..4d9bedfe101c 100644 --- a/fs/f2fs/node.c +++ b/fs/f2fs/node.c @@ -52,6 +52,11 @@ bool available_free_memory(struct f2fs_sb_info *sbi, int type) mem_size = (nm_i->nat_cnt * sizeof(struct nat_entry)) >> PAGE_CACHE_SHIFT; res = mem_size < ((avail_ram * nm_i->ram_thresh / 100) >> 2); + } else if (type == DIRTY_DENTS) { + if (sbi->sb->s_bdi->wb.dirty_exceeded) + return false; + mem_size = get_pages(sbi, F2FS_DIRTY_DENTS); + res = mem_size < ((avail_ram * nm_i->ram_thresh / 100) >> 1); } else if (type == INO_ENTRIES) { int i; |