summaryrefslogtreecommitdiffstats
path: root/fs/f2fs/extent_cache.c
diff options
context:
space:
mode:
authorHou Pengyang <houpengyang@huawei.com>2017-02-25 03:57:38 +0000
committerJaegeuk Kim <jaegeuk@kernel.org>2017-02-27 10:07:37 -0800
commit19f4e688f89a9ce07b86d06d3df23c1cd877ab4e (patch)
tree0f0972a51cbf54cfd5d7055f18253f66b9ea8937 /fs/f2fs/extent_cache.c
parentd27c3d89db9986b6f48576169031247e4c893729 (diff)
downloadlinux-19f4e688f89a9ce07b86d06d3df23c1cd877ab4e.tar.bz2
f2fs: avoid bggc->fggc when enough free segments are avaliable after cp
We use has_not_enough_free_secs to check if there are enough free segments, (free_sections(sbi) + freed) <= (node_secs + 2 * dent_secs + imeta_secs + reserved_sections(sbi) + needed); Under scenario with large number of dirty nodes, these nodes would be flushed during cp, as a result, right side of the inequality would be decreased, while left side stays unchanged if these nodes are flushed in SSR way, which means there are enough free segments after this cp. For this case, we just do a bggc instead of fggc. Signed-off-by: Hou Pengyang <houpengyang@huawei.com> Reviewed-by: Chao Yu <yuchao0@huawei.com> Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
Diffstat (limited to 'fs/f2fs/extent_cache.c')
0 files changed, 0 insertions, 0 deletions