mirror of
https://github.com/kdave/btrfs-progs
synced 2024-12-25 15:42:23 +00:00
btrfs-progs: move raid-stripe-tree and squota build out of experimental
The kernel patches for RST and squota are queued for 6.7, we need to be able to test the features so it's not necessary to hide the mkfs support under experimental build. The kernel may still need debug build to enable mount. Signed-off-by: David Sterba <dsterba@suse.com>
This commit is contained in:
parent
10bc66034f
commit
b421fdff95
@ -221,7 +221,6 @@ static const struct btrfs_feature mkfs_features[] = {
|
|||||||
VERSION_NULL(default),
|
VERSION_NULL(default),
|
||||||
.desc = "block group tree to reduce mount time"
|
.desc = "block group tree to reduce mount time"
|
||||||
},
|
},
|
||||||
#if EXPERIMENTAL
|
|
||||||
{
|
{
|
||||||
.name = "rst",
|
.name = "rst",
|
||||||
.incompat_flag = BTRFS_FEATURE_INCOMPAT_RAID_STRIPE_TREE,
|
.incompat_flag = BTRFS_FEATURE_INCOMPAT_RAID_STRIPE_TREE,
|
||||||
@ -247,7 +246,6 @@ static const struct btrfs_feature mkfs_features[] = {
|
|||||||
VERSION_NULL(default),
|
VERSION_NULL(default),
|
||||||
.desc = "squota support (simple accounting qgroups)"
|
.desc = "squota support (simple accounting qgroups)"
|
||||||
},
|
},
|
||||||
#endif
|
|
||||||
/* Keep this one last */
|
/* Keep this one last */
|
||||||
{
|
{
|
||||||
.name = "list-all",
|
.name = "list-all",
|
||||||
|
@ -123,6 +123,7 @@ static inline u32 __BTRFS_LEAF_DATA_SIZE(u32 nodesize)
|
|||||||
BTRFS_FEATURE_INCOMPAT_RAID1C34 | \
|
BTRFS_FEATURE_INCOMPAT_RAID1C34 | \
|
||||||
BTRFS_FEATURE_INCOMPAT_METADATA_UUID | \
|
BTRFS_FEATURE_INCOMPAT_METADATA_UUID | \
|
||||||
BTRFS_FEATURE_INCOMPAT_ZONED | \
|
BTRFS_FEATURE_INCOMPAT_ZONED | \
|
||||||
|
BTRFS_FEATURE_INCOMPAT_RAID_STRIPE_TREE | \
|
||||||
BTRFS_FEATURE_INCOMPAT_SIMPLE_QUOTA)
|
BTRFS_FEATURE_INCOMPAT_SIMPLE_QUOTA)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -1295,7 +1295,6 @@ int btrfs_setup_all_roots(struct btrfs_fs_info *fs_info, u64 root_tree_bytenr,
|
|||||||
return -EIO;
|
return -EIO;
|
||||||
}
|
}
|
||||||
|
|
||||||
#if EXPERIMENTAL
|
|
||||||
if (btrfs_fs_incompat(fs_info, RAID_STRIPE_TREE)) {
|
if (btrfs_fs_incompat(fs_info, RAID_STRIPE_TREE)) {
|
||||||
ret = btrfs_find_and_setup_root(root, fs_info,
|
ret = btrfs_find_and_setup_root(root, fs_info,
|
||||||
BTRFS_RAID_STRIPE_TREE_OBJECTID,
|
BTRFS_RAID_STRIPE_TREE_OBJECTID,
|
||||||
@ -1307,7 +1306,6 @@ int btrfs_setup_all_roots(struct btrfs_fs_info *fs_info, u64 root_tree_bytenr,
|
|||||||
set_bit(BTRFS_ROOT_TRACK_DIRTY, &fs_info->stripe_root->state);
|
set_bit(BTRFS_ROOT_TRACK_DIRTY, &fs_info->stripe_root->state);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif
|
|
||||||
|
|
||||||
if (maybe_load_block_groups(fs_info, flags)) {
|
if (maybe_load_block_groups(fs_info, flags)) {
|
||||||
ret = btrfs_read_block_groups(fs_info);
|
ret = btrfs_read_block_groups(fs_info);
|
||||||
|
@ -757,7 +757,6 @@ bool zoned_profile_supported(u64 map_type, bool rst)
|
|||||||
if (flags == 0)
|
if (flags == 0)
|
||||||
return true;
|
return true;
|
||||||
|
|
||||||
#if EXPERIMENTAL
|
|
||||||
if (data) {
|
if (data) {
|
||||||
if ((flags & BTRFS_BLOCK_GROUP_DUP) && rst)
|
if ((flags & BTRFS_BLOCK_GROUP_DUP) && rst)
|
||||||
return true;
|
return true;
|
||||||
@ -784,10 +783,6 @@ bool zoned_profile_supported(u64 map_type, bool rst)
|
|||||||
if (flags & BTRFS_BLOCK_GROUP_RAID10)
|
if (flags & BTRFS_BLOCK_GROUP_RAID10)
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
#else
|
|
||||||
if (!data && (flags & BTRFS_BLOCK_GROUP_DUP))
|
|
||||||
return true;
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* All other profiles are not supported yet */
|
/* All other profiles are not supported yet */
|
||||||
return false;
|
return false;
|
||||||
|
@ -1623,7 +1623,6 @@ int BOX_MAIN(mkfs)(int argc, char **argv)
|
|||||||
if (ret)
|
if (ret)
|
||||||
goto error;
|
goto error;
|
||||||
|
|
||||||
#if EXPERIMENTAL
|
|
||||||
if (opt_zoned && device_count) {
|
if (opt_zoned && device_count) {
|
||||||
switch (data_profile & BTRFS_BLOCK_GROUP_PROFILE_MASK) {
|
switch (data_profile & BTRFS_BLOCK_GROUP_PROFILE_MASK) {
|
||||||
case BTRFS_BLOCK_GROUP_DUP:
|
case BTRFS_BLOCK_GROUP_DUP:
|
||||||
@ -1638,21 +1637,18 @@ int BOX_MAIN(mkfs)(int argc, char **argv)
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif
|
|
||||||
|
|
||||||
if (opt_zoned) {
|
if (opt_zoned) {
|
||||||
u64 metadata = BTRFS_BLOCK_GROUP_METADATA | metadata_profile;
|
u64 metadata = BTRFS_BLOCK_GROUP_METADATA | metadata_profile;
|
||||||
u64 data = BTRFS_BLOCK_GROUP_DATA | data_profile;
|
u64 data = BTRFS_BLOCK_GROUP_DATA | data_profile;
|
||||||
bool rst = false;
|
bool rst = false;
|
||||||
|
|
||||||
#if EXPERIMENTAL
|
|
||||||
if (features.incompat_flags & BTRFS_FEATURE_INCOMPAT_RAID_STRIPE_TREE)
|
if (features.incompat_flags & BTRFS_FEATURE_INCOMPAT_RAID_STRIPE_TREE)
|
||||||
rst = true;
|
rst = true;
|
||||||
#endif
|
|
||||||
|
|
||||||
if (!zoned_profile_supported(metadata, rst) ||
|
if (!zoned_profile_supported(metadata, rst) ||
|
||||||
!zoned_profile_supported(data, rst)) {
|
!zoned_profile_supported(data, rst)) {
|
||||||
error("zoned mode does not yet support RAID/DUP profiles, please specify '-d single -m single' manually");
|
error("zoned mode does not yet support the selected RAID profiles");
|
||||||
goto error;
|
goto error;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user