f2fs: remove unnecessary condition check for write_checkpoint in f2fs_gc
authorYunlong Song <yunlong.song@huawei.com>
Tue, 21 Feb 2017 12:43:48 +0000 (20:43 +0800)
committerJaegeuk Kim <jaegeuk@kernel.org>
Mon, 27 Feb 2017 17:59:50 +0000 (09:59 -0800)
Since has_not_enough_free_secs(sbi, 0, 0) must be true if has_not_enough_
free_secs(sbi, sec_freed, 0) is true, write_checkpoint is sure to execute in
both conditions.

Signed-off-by: Yunlong Song <yunlong.song@huawei.com>
Reviewed-by: Chao Yu <yuchao0@huawei.com>
Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
fs/f2fs/gc.c

index 11416c7cb705395532abffd01dab0ef183dbce19..6c996e39b59a0d999e9eae7bfd4097735e24af3e 100644 (file)
@@ -958,15 +958,9 @@ gc_more:
                 * enough free sections, we should flush dent/node blocks and do
                 * garbage collections.
                 */
-               if (dirty_segments(sbi) || prefree_segments(sbi)) {
-                       ret = write_checkpoint(sbi, &cpc);
-                       if (ret)
-                               goto stop;
-               } else if (has_not_enough_free_secs(sbi, 0, 0)) {
-                       ret = write_checkpoint(sbi, &cpc);
-                       if (ret)
-                               goto stop;
-               }
+               ret = write_checkpoint(sbi, &cpc);
+               if (ret)
+                       goto stop;
        } else if (gc_type == BG_GC && !background) {
                /* f2fs_balance_fs doesn't need to do BG_GC in critical path. */
                goto stop;