btrfs: _scratch_mkfs_sized fix min size without mixed option
authorAnand Jain <anand.jain@oracle.com>
Tue, 25 Sep 2018 04:24:14 +0000 (12:24 +0800)
committerEryu Guan <guaneryu@gmail.com>
Sun, 7 Oct 2018 14:56:25 +0000 (22:56 +0800)
As of now _scratch_mkfs_sized() checks if the requested size is
below 1G and forces the --mixed option for the mkfs.btrfs. Well the
correct size considering all possible group profiles at which we
need to force the mixed option is roughly 256Mbytes. So fix that.

Signed-off-by: Anand Jain <anand.jain@oracle.com>
Reviewed-by: Qu Wenruo <wqu@suse.com>
Signed-off-by: Eryu Guan <guaneryu@gmail.com>
common/rc

index d5bb1feee2c3f83093f7eec3540b4466a8c5b502..90dc3002bc3dac79a36cdc02f4b4b54d793f923c 100644 (file)
--- a/common/rc
+++ b/common/rc
@@ -969,7 +969,10 @@ _scratch_mkfs_sized()
        ;;
     btrfs)
        local mixed_opt=
-       (( fssize <= 1024 * 1024 * 1024 )) && mixed_opt='--mixed'
+       # minimum size that's needed without the mixed option.
+       # Ref: btrfs-prog: btrfs_min_dev_size()
+       # Non mixed mode is also the default option.
+       (( fssize < $((256 * 1024 *1024)) )) && mixed_opt='--mixed'
        $MKFS_BTRFS_PROG $MKFS_OPTIONS $mixed_opt -b $fssize $SCRATCH_DEV
        ;;
     jfs)