[LTP] [PATCH 2/2] df01.sh: Use tst_fsfreeze for XFS on kernel >= 5.19

Cyril Hrubis chrubis@suse.cz
Mon Mar 13 15:38:43 CET 2023


Hi!
> XFS since kernel 5.19 postpone certain operation.  Use LTP fsfreeze
> implementation to force all the background garbage collection to run
> to completion.
> 
> Link: https://lore.kernel.org/linux-block/974cc110-d47e-5fae-af5f-e2e610720e2d@redhat.com/
> Suggested-by: Eric Sandeen <sandeen@redhat.com>
> Signed-off-by: Petr Vorel <pvorel@suse.cz>
> ---
>  testcases/commands/df/df01.sh | 7 ++++++-
>  1 file changed, 6 insertions(+), 1 deletion(-)
> 
> diff --git a/testcases/commands/df/df01.sh b/testcases/commands/df/df01.sh
> index ae0449c3c..699d1538f 100755
> --- a/testcases/commands/df/df01.sh
> +++ b/testcases/commands/df/df01.sh
> @@ -1,7 +1,7 @@
>  #!/bin/sh
>  # SPDX-License-Identifier: GPL-2.0-or-later
>  # Copyright (c) 2015 Fujitsu Ltd.
> -# Copyright (c) 2018-2022 Petr Vorel <pvorel@suse.cz>
> +# Copyright (c) 2018-2023 Petr Vorel <pvorel@suse.cz>
>  # Author: Zhang Jin <jy_zhangjin@cn.fujitsu.com>
>  #
>  # Test df command with some basic options.
> @@ -46,6 +46,11 @@ df_test()
>  
>  	ROD_SILENT rm -rf $TST_MNTPOINT/testimg
>  
> +	# force all the background garbage collection to run to completion
> +	if [ "$TST_FS_TYPE" = "xfs" ] && tst_kvcmp -ge "5.19"; then
> +		tst_fsfreeze $TST_MNTPOINT
> +	fi

This looks overly specific, can't we just freeze and unfreeze the FS
without looking at kernel version? Or will we get errors on older XFS?

I suppose that this may still start to fail on distribution kernels if
some of the newer functionality gets backported...

Otherwise it looks good.

-- 
Cyril Hrubis
chrubis@suse.cz


More information about the ltp mailing list