[PATCH 3/4] f2fs: avoid gc in cp_error case
From: Jaegeuk Kim
Date: Wed Sep 21 2016 - 23:56:10 EST
Otherwise, we can hit
f2fs_bug_on(sbi, !PageUptodate(sum_page));
Signed-off-by: Jaegeuk Kim <jaegeuk@xxxxxxxxxx>
---
fs/f2fs/gc.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/fs/f2fs/gc.c b/fs/f2fs/gc.c
index a9a3c9f..b9d6c42 100644
--- a/fs/f2fs/gc.c
+++ b/fs/f2fs/gc.c
@@ -847,7 +847,8 @@ static int do_garbage_collect(struct f2fs_sb_info *sbi,
for (segno = start_segno; segno < end_segno; segno++) {
- if (get_valid_blocks(sbi, segno, 1) == 0)
+ if (get_valid_blocks(sbi, segno, 1) == 0 ||
+ unlikely(f2fs_cp_error(sbi)))
goto next;
/* find segment summary of victim */
--
2.8.3