[LTP] [PATCH] statx04: Re-add BTRFS version check

xuyang2018.jy@fujitsu.com xuyang2018.jy@fujitsu.com
Fri Nov 19 03:15:24 CET 2021


Hi Richard
> Removing this was a step too far. This causes regressions on products
> where there is now no chance of a backport.

Do you mean that your distribution based on older kernel ie 4.11
supports statx syscall but btrfs missed the btrfs patch? Also this
distribution doesn't update and so have no choice to backport.
> This is different from the
> other version checks which are for much newer kernels. 
IMO, distribution based on older kernel 4.11 still can make ext2 ext4
xfs supports statx because the backport looks not diffcult. So, I don't
think this is a difference. It depends on kernel users worked on this
distirbution whether have this requirement.
Also there could be differences in the difficulty of a backport.
I see xfs/btrfs code, it only fills the attributes field of stat
struture by parsing inode flags.

If you must add this check on suse distribution, I guess you just add
this version check for suse distribution. For centos7,8, neither of them
supports btrfs, but I don't know other distribution situation ie unbuntu.

Maybe you can just add suse detection in lib/tst_kvercmp.c.

Just my personal thought.

Best Regards
Yang Xu

> 
> Signed-off-by: Richard Palethorpe<rpalethorpe@suse.com>
> Cc: Yang Xu<xuyang2018.jy@fujitsu.com>
> ---
> 
> Note that I am still very much against new version checks if there is
> a high chance of backports. We should leave long established checks
> alone however.
> 
>   testcases/kernel/syscalls/statx/statx04.c | 3 +++
>   1 file changed, 3 insertions(+)
> 
> diff --git a/testcases/kernel/syscalls/statx/statx04.c b/testcases/kernel/syscalls/statx/statx04.c
> index 180c61bf9..b5ca0586a 100644
> --- a/testcases/kernel/syscalls/statx/statx04.c
> +++ b/testcases/kernel/syscalls/statx/statx04.c
> @@ -182,6 +182,9 @@ static void caid_flags_setup(void)
> 
>   static void setup(void)
>   {
> +	if (!strcmp(tst_device->fs_type, "btrfs")&&  tst_kvercmp(4, 13, 0)<  0)
> +		tst_brk(TCONF, "Btrfs statx() supported since 4.13");
> +
>   	SAFE_MKDIR(TESTDIR_FLAGGED, 0777);
>   	SAFE_MKDIR(TESTDIR_UNFLAGGED, 0777);
> 


More information about the ltp mailing list