On Tue, Feb 20, 2024 at 4:01 AM Qu Wenruo <wqu@xxxxxxxx> wrote: > > [BUG] > When running an older (vendoer v6.4) kernel, some qgroup test cases > would be skipped: > > btrfs/017 1s ... [not run] not running normal qgroups > > [CAUSE] > With the introduce of simple quota mode, there is a new sysfs interface, > /sys/fs/btrfs/<uuid>/qgroups/mode to indicate the currently running > qgroup modes. > > And _qgroup_mode() from `common/btrfs` is using that new interface to > detect the mode. > > Unfortuantely for older kernels without simple quota support, > _qgroup_mode() would return "disabled" directly, causing those test case > to be skipped. > > [FIX] > Fallback to regular qgroup if that sysfs interface is not accessible, as > qgroup is introduced from the very beginning of btrfs, thus the regular > qgroup is always supported. > > Signed-off-by: Qu Wenruo <wqu@xxxxxxxx> Reviewed-by: Filipe Manana <fdmanana@xxxxxxxx> Looks good, thanks. > --- > common/btrfs | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/common/btrfs b/common/btrfs > index e1b29c61..0a3f0f0b 100644 > --- a/common/btrfs > +++ b/common/btrfs > @@ -728,7 +728,7 @@ _qgroup_mode() > if _has_fs_sysfs_attr $dev /qgroups/mode; then > _get_fs_sysfs_attr $dev qgroups/mode > else > - echo "disabled" > + echo "qgroup" > fi > } > > -- > 2.42.0 > >