On Thu, Mar 18, 2021 at 11:48:15AM +0000, fdman...@kernel.org wrote:
> From: Filipe Manana <fdman...@suse.com>
> 
> We start a process that runs fsstress, then kill the process, wait for it
> to die and then end the test, where we attempt to unmount the fs which
> often fails because the fsstress subcommand started by the process is
> still running and using the mount point. This results in a test failure:
> 
>   btrfs/232 1s ... umount: /home/fdmanana/btrfs-tests/scratch_1: target is 
> busy.
>   _check_btrfs_filesystem: filesystem on /dev/sdc is inconsistent
>   (see /home/fdmanana/git/hub/xfstests/results//btrfs/232.full for details)
> 
> Fix that by adding a trap to the writer() function.
> 
> Signed-off-by: Filipe Manana <fdman...@suse.com>

Thanks for the fix! I missed that in review..

Thanks,
Eryu

> ---
>  tests/btrfs/232 | 4 ++++
>  1 file changed, 4 insertions(+)
> 
> diff --git a/tests/btrfs/232 b/tests/btrfs/232
> index b0a04a61..b9841410 100755
> --- a/tests/btrfs/232
> +++ b/tests/btrfs/232
> @@ -32,6 +32,10 @@ _cleanup()
>  
>  writer()
>  {
> +     # Wait for running fsstress subcommand before exitting so that
> +     # mountpoint is not busy when we try to unmount it.
> +     trap "wait; exit" SIGTERM
> +
>       while true; do
>               args=`_scale_fsstress_args -p 20 -n 1000 $FSSTRESS_AVOID -d 
> $SCRATCH_MNT/stressdir`
>               $FSSTRESS_PROG $args >/dev/null 2>&1
> -- 
> 2.28.0

Reply via email to