Message ID | 0b8f20ae26661e040dfcaae90928bbc1c6fff5cd.1662952308.git.wqu@suse.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | btrfs-progs: hide block group tree behind experimental feature | expand |
On Mon, Sep 12, 2022 at 11:12:01AM +0800, Qu Wenruo wrote: > The block group tree doesn't yet have full bi-directional conversion > support from btrfstune, and it seems we may want one or two release > cycles to rule out some extra bugs before really releasing the progs > support. > > This patch will hide the block group tree feature behind experimental > flag for the following tools: > > - btrfstune > "-b" option to convert to bg tree. > > - mkfs.btrfs > hide "block-group-tree" feature from both -O (the new default position > for all features) and -R (the old, soon to be deprecated one). The block group tree is going to 6.1, so the progs support will be experimental in 6.0 and enabled no later than 6.1. It might be enabled earlier so we can use the normal build in testing.
On 2022/9/21 22:06, David Sterba wrote: > On Mon, Sep 12, 2022 at 11:12:01AM +0800, Qu Wenruo wrote: >> The block group tree doesn't yet have full bi-directional conversion >> support from btrfstune, and it seems we may want one or two release >> cycles to rule out some extra bugs before really releasing the progs >> support. >> >> This patch will hide the block group tree feature behind experimental >> flag for the following tools: >> >> - btrfstune >> "-b" option to convert to bg tree. >> >> - mkfs.btrfs >> hide "block-group-tree" feature from both -O (the new default position >> for all features) and -R (the old, soon to be deprecated one). > > The block group tree is going to 6.1, so the progs support will be > experimental in 6.0 and enabled no later than 6.1. It might be enabled > earlier so we can use the normal build in testing. Personally speaking, I'd hope bg tree would be hidden behind experimental until the bi-directional convert is implemented. (AKA, I should finish the remaining part of the btrfstune for bg tree) Thanks, Qu
On Thu, Sep 22, 2022 at 06:20:25AM +0800, Qu Wenruo wrote: > > > On 2022/9/21 22:06, David Sterba wrote: > > On Mon, Sep 12, 2022 at 11:12:01AM +0800, Qu Wenruo wrote: > >> The block group tree doesn't yet have full bi-directional conversion > >> support from btrfstune, and it seems we may want one or two release > >> cycles to rule out some extra bugs before really releasing the progs > >> support. > >> > >> This patch will hide the block group tree feature behind experimental > >> flag for the following tools: > >> > >> - btrfstune > >> "-b" option to convert to bg tree. > >> > >> - mkfs.btrfs > >> hide "block-group-tree" feature from both -O (the new default position > >> for all features) and -R (the old, soon to be deprecated one). > > > > The block group tree is going to 6.1, so the progs support will be > > experimental in 6.0 and enabled no later than 6.1. It might be enabled > > earlier so we can use the normal build in testing. > > Personally speaking, I'd hope bg tree would be hidden behind > experimental until the bi-directional convert is implemented. As with other new features we need a stabilization period, mkfs support is the first step and the user space tools should provide feature parity in the same release number at the latest. That we have the btrfstune to do the conversions is a nice to have that we do want to have eventually because we know that the bg tree will solve slow mounts on large filesystems. So the experimental status for btrfstune is fine, but not for mkfs.
diff --git a/btrfstune.c b/btrfstune.c index add7b1804400..b9a76ac095f0 100644 --- a/btrfstune.c +++ b/btrfstune.c @@ -949,7 +949,11 @@ int BOX_MAIN(btrfstune)(int argc, char *argv[]) #endif { NULL, 0, NULL, 0 } }; +#if EXPERIMENTAL int c = getopt_long(argc, argv, "S:rxfuU:nmM:b", long_options, NULL); +#else + int c = getopt_long(argc, argv, "S:rxfuU:nmM:", long_options, NULL); +#endif if (c < 0) break; diff --git a/common/fsfeatures.c b/common/fsfeatures.c index 5896f66b3e91..67b5b08befc1 100644 --- a/common/fsfeatures.c +++ b/common/fsfeatures.c @@ -224,14 +224,16 @@ static const struct btrfs_feature runtime_features[] = { VERSION_TO_STRING2(safe, 4,9), VERSION_TO_STRING2(default, 5,15), .desc = "free space tree (space_cache=v2)" +#if EXPERIMENTAL }, { .name = "block-group-tree", .flag = BTRFS_RUNTIME_FEATURE_BLOCK_GROUP_TREE, .sysfs_name = "block_group_tree", - VERSION_TO_STRING2(compat, 6,0), + VERSION_TO_STRING2(compat, 6,2), VERSION_NULL(safe), VERSION_NULL(default), .desc = "block group tree to reduce mount time" +#endif }, /* Keep this one last */ {
The block group tree doesn't yet have full bi-directional conversion support from btrfstune, and it seems we may want one or two release cycles to rule out some extra bugs before really releasing the progs support. This patch will hide the block group tree feature behind experimental flag for the following tools: - btrfstune "-b" option to convert to bg tree. - mkfs.btrfs hide "block-group-tree" feature from both -O (the new default position for all features) and -R (the old, soon to be deprecated one). Signed-off-by: Qu Wenruo <wqu@suse.com> --- btrfstune.c | 4 ++++ common/fsfeatures.c | 4 +++- 2 files changed, 7 insertions(+), 1 deletion(-)