f2fs: should get a victim from retrials
If we do not call get_victim first, we cannot get a new victim for retrial
path.
Reviewed-by: Chao Yu <chao2.yu@samsung.com>
Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
diff --git a/fs/f2fs/gc.c b/fs/f2fs/gc.c
index b6e03eb..343b096 100644
--- a/fs/f2fs/gc.c
+++ b/fs/f2fs/gc.c
@@ -799,8 +799,7 @@
int f2fs_gc(struct f2fs_sb_info *sbi)
{
- unsigned int segno = NULL_SEGNO;
- unsigned int i;
+ unsigned int segno, i;
int gc_type = BG_GC;
int sec_freed = 0;
int ret = -1;
@@ -812,6 +811,8 @@
cpc.reason = __get_cp_reason(sbi);
gc_more:
+ segno = NULL_SEGNO;
+
if (unlikely(!(sbi->sb->s_flags & MS_ACTIVE)))
goto stop;
if (unlikely(f2fs_cp_error(sbi)))