提交 17d899df 编写于 作者: C Chao Yu 提交者: Jaegeuk Kim

f2fs: fix the wrong stat count of calling gc

With a partition which was formated as multi segments in one section,
we stated incorrectly for count of gc operation.

e.g., for a partition with segs_per_sec = 4

cat /sys/kernel/debug/f2fs/status

GC calls: 208 (BG: 7)
  - data segments : 104 (52)
  - node segments : 104 (24)

GC called count should be (104 (data segs) + 104 (node segs)) / 4 = 52,
rather than 208. Fix it.
Signed-off-by: NChao Yu <chao2.yu@samsung.com>
Signed-off-by: NJaegeuk Kim <jaegeuk@kernel.org>
上级 4ce53776
...@@ -820,7 +820,6 @@ static int do_garbage_collect(struct f2fs_sb_info *sbi, ...@@ -820,7 +820,6 @@ static int do_garbage_collect(struct f2fs_sb_info *sbi,
gc_type); gc_type);
stat_inc_seg_count(sbi, type, gc_type); stat_inc_seg_count(sbi, type, gc_type);
stat_inc_call_count(sbi->stat_info);
f2fs_put_page(sum_page, 0); f2fs_put_page(sum_page, 0);
} }
...@@ -845,6 +844,9 @@ static int do_garbage_collect(struct f2fs_sb_info *sbi, ...@@ -845,6 +844,9 @@ static int do_garbage_collect(struct f2fs_sb_info *sbi,
if (get_valid_blocks(sbi, start_segno++, 1) == 0) if (get_valid_blocks(sbi, start_segno++, 1) == 0)
seg_freed++; seg_freed++;
} }
stat_inc_call_count(sbi->stat_info);
return seg_freed; return seg_freed;
} }
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册