btrfs-progs: convert: remove raid-stripe-tree support

The raid-stripe-tree (RST) feature is for zoned devices to support extra
data profiles, and is not yet a stable feature (still requires
CONFIG_BTRFS_DEBUG enabled kernel to support it).

Furthermore the supported filesystems (ext*, reiserfs and ntfs) don't
even support zoned devices, and even we force RST support for
btrfs-convert, we would only create an empty tree for RST, as btrfs
convert would only result SINGLE data profile with SINGLE/DUP metadata
profile, neither needs RST at all.

Enabling RST for btrfs-convert would only cause problems for false test
failures as we incorrectly allow RST feature for btrfs-convert.

Fixes the problem by removing raid-stripe-tree support from
btrfs-convert and remove the test cases support for RST.

This patch is mostly reverting commit 346a381923 ("btrfs-progs:
convert: add raid-stripe-tree to allowed features"), but keeps the test
infrastructure to support bgt features for convert.

Signed-off-by: Qu Wenruo <wqu@suse.com>
Signed-off-by: David Sterba <dsterba@suse.com>
This commit is contained in:
Qu Wenruo 2024-06-13 08:00:32 +09:30 committed by David Sterba
parent 6df00a69e4
commit 285d2cbdf9
7 changed files with 7 additions and 8 deletions

View File

@ -68,8 +68,7 @@ static const struct btrfs_mkfs_features btrfs_convert_allowed_features = {
BTRFS_FEATURE_INCOMPAT_BIG_METADATA |
BTRFS_FEATURE_INCOMPAT_EXTENDED_IREF |
BTRFS_FEATURE_INCOMPAT_SKINNY_METADATA |
BTRFS_FEATURE_INCOMPAT_NO_HOLES |
BTRFS_FEATURE_INCOMPAT_RAID_STRIPE_TREE,
BTRFS_FEATURE_INCOMPAT_NO_HOLES,
.runtime_flags = BTRFS_FEATURE_RUNTIME_QUOTA,
};

View File

@ -12,7 +12,7 @@ check_kernel_support_acl
# Iterate over defaults and options that are not tied to hardware capabilities
# or number of devices
for feature in '' 'block-group-tree' 'raid-stripe-tree'; do
for feature in '' 'block-group-tree'; do
convert_test ext2 "$feature" "ext2 4k nodesize" 4096 mke2fs -b 4096
convert_test ext2 "$feature" "ext2 16k nodesize" 16384 mke2fs -b 4096
convert_test ext2 "$feature" "ext2 64k nodesize" 65536 mke2fs -b 4096

View File

@ -12,7 +12,7 @@ check_kernel_support_acl
# Iterate over defaults and options that are not tied to hardware capabilities
# or number of devices
for feature in '' 'block-group-tree' 'raid-stripe-tree' ; do
for feature in '' 'block-group-tree'; do
convert_test ext4 "$feature" "ext4 4k nodesize" 4096 mke2fs -t ext4 -b 4096
convert_test ext4 "$feature" "ext4 16k nodesize" 16384 mke2fs -t ext4 -b 4096
convert_test ext4 "$feature" "ext4 64k nodesize" 65536 mke2fs -t ext4 -b 4096

View File

@ -68,7 +68,7 @@ do_test() {
# Iterate over defaults and options that are not tied to hardware capabilities
# or number of devices
for feature in '' 'block-group-tree' 'raid-stripe-tree' ; do
for feature in '' 'block-group-tree'; do
do_test "$feature" "ext4 4k nodesize" 4096 mke2fs -t ext4 -b 4096
do_test "$feature" "ext4 16k nodesize" 16384 mke2fs -t ext4 -b 4096
do_test "$feature" "ext4 64k nodesize" 65536 mke2fs -t ext4 -b 4096

View File

@ -15,7 +15,7 @@ prepare_test_dev
# Iterate over defaults and options that are not tied to hardware capabilities
# or number of devices
for feature in '' 'block-group-tree' 'raid-stripe-tree'; do
for feature in '' 'block-group-tree'; do
convert_test reiserfs "$feature" "reiserfs 4k nodesize" 4096 mkreiserfs -b 4096
convert_test reiserfs "$feature" "reiserfs 16k nodesize" 16384 mkreiserfs -b 4096
convert_test reiserfs "$feature" "reiserfs 64k nodesize" 65536 mkreiserfs -b 4096

View File

@ -70,7 +70,7 @@ do_test() {
# Iterate over defaults and options that are not tied to hardware capabilities
# or number of devices
for feature in '' 'block-group-tree' 'raid-stripe-tree'; do
for feature in '' 'block-group-tree'; do
do_test "$feature" "reiserfs 4k nodesize" 4096 mkreiserfs -b 4096
do_test "$feature" "reiserfs 16k nodesize" 16384 mkreiserfs -b 4096
do_test "$feature" "reiserfs 64k nodesize" 65536 mkreiserfs -b 4096

View File

@ -17,6 +17,6 @@ prepare_test_dev
# Iterate over defaults and options that are not tied to hardware capabilities
# or number of devices. Test only 4K block size as minimum.
for feature in '' 'block-group-tree' 'raid-stripe-tree'; do
for feature in '' 'block-group-tree'; do
convert_test ntfs "$feature" "ntfs 4k nodesize" 4096 mkfs.ntfs -s 4096
done