mkfs.f2fs: allocate zones together to avoid random access
authorJaegeuk Kim <jaegeuk@kernel.org>
Thu, 17 Dec 2020 18:12:59 +0000 (10:12 -0800)
committerJaegeuk Kim <jaegeuk@kernel.org>
Wed, 23 Dec 2020 19:32:33 +0000 (11:32 -0800)
This patch allocates zones to initial logs together, if it's on zoned device.

Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
mkfs/f2fs_format.c

index f60dcc0..b4bec92 100644 (file)
@@ -510,6 +510,13 @@ static int f2fs_prepare_super_block(void)
                c.cur_seg[CURSEG_HOT_DATA] = prev_zone(CURSEG_COLD_NODE);
                c.cur_seg[CURSEG_COLD_DATA] = 0;
                c.cur_seg[CURSEG_WARM_DATA] = next_zone(CURSEG_COLD_DATA);
+       } else if (c.zoned_mode) {
+               c.cur_seg[CURSEG_HOT_NODE] = 0;
+               c.cur_seg[CURSEG_WARM_NODE] = next_zone(CURSEG_HOT_NODE);
+               c.cur_seg[CURSEG_COLD_NODE] = next_zone(CURSEG_WARM_NODE);
+               c.cur_seg[CURSEG_HOT_DATA] = next_zone(CURSEG_COLD_NODE);
+               c.cur_seg[CURSEG_WARM_DATA] = next_zone(CURSEG_HOT_DATA);
+               c.cur_seg[CURSEG_COLD_DATA] = next_zone(CURSEG_WARM_DATA);
        } else {
                c.cur_seg[CURSEG_HOT_NODE] = 0;
                c.cur_seg[CURSEG_WARM_NODE] = next_zone(CURSEG_HOT_NODE);