From: Namjae Jeon <[email protected]>
Instead of checking for victim_segmap(FG_GC) OR
(gc_type == BG_GC) && victim_segmap(BG_GC);
to continue for the victim selection. The 2 conditions
can simply be merged and decision can directly be made using 'gc_type'.
Signed-off-by: Namjae Jeon <[email protected]>
Signed-off-by: Amit Sahrawat <[email protected]>
---
fs/f2fs/gc.c | 5 +----
1 file changed, 1 insertion(+), 4 deletions(-)
diff --git a/fs/f2fs/gc.c b/fs/f2fs/gc.c
index 94b8a0c..16b4148 100644
--- a/fs/f2fs/gc.c
+++ b/fs/f2fs/gc.c
@@ -266,10 +266,7 @@ static int get_victim_by_default(struct f2fs_sb_info *sbi,
}
p.offset = ((segno / p.ofs_unit) * p.ofs_unit) + p.ofs_unit;
- if (test_bit(segno, dirty_i->victim_segmap[FG_GC]))
- continue;
- if (gc_type == BG_GC &&
- test_bit(segno, dirty_i->victim_segmap[BG_GC]))
+ if (test_bit(segno, dirty_i->victim_segmap[gc_type]))
continue;
if (IS_CURSEC(sbi, GET_SECNO(sbi, segno)))
continue;
--
1.7.9.5
2013-03-02 (토), 12:40 +0900, Namjae Jeon:
> From: Namjae Jeon <[email protected]>
>
> Instead of checking for victim_segmap(FG_GC) OR
> (gc_type == BG_GC) && victim_segmap(BG_GC);
> to continue for the victim selection. The 2 conditions
> can simply be merged and decision can directly be made using 'gc_type'.
>
> Signed-off-by: Namjae Jeon <[email protected]>
> Signed-off-by: Amit Sahrawat <[email protected]>
> ---
> fs/f2fs/gc.c | 5 +----
> 1 file changed, 1 insertion(+), 4 deletions(-)
>
> diff --git a/fs/f2fs/gc.c b/fs/f2fs/gc.c
> index 94b8a0c..16b4148 100644
> --- a/fs/f2fs/gc.c
> +++ b/fs/f2fs/gc.c
> @@ -266,10 +266,7 @@ static int get_victim_by_default(struct f2fs_sb_info *sbi,
> }
> p.offset = ((segno / p.ofs_unit) * p.ofs_unit) + p.ofs_unit;
>
> - if (test_bit(segno, dirty_i->victim_segmap[FG_GC]))
> - continue;
> - if (gc_type == BG_GC &&
> - test_bit(segno, dirty_i->victim_segmap[BG_GC]))
> + if (test_bit(segno, dirty_i->victim_segmap[gc_type]))
Negative.
We should check FG_GC all the time.
Thanks,
> continue;
> if (IS_CURSEC(sbi, GET_SECNO(sbi, segno)))
> continue;
--
Jaegeuk Kim
Samsung