On Mon, May 09, 2022 at 02:56:57PM +0800, Yang Xu wrote: > When testing this case on my machine, it reports the following error: > umount: /mnt/xfstests/scratch: target is busy. > xfs_db: /dev/sda11 contains a mounted filesystem > > scratch_unmount failed, so _scratch_xfs_db reports scratch_dev is a > mounted filesystem. It seems filesystem has something to be doing. > > To avoid this, just add a 100ms sleep before scratch_umount. > > Signed-off-by: Yang Xu <xuyang2018.jy@xxxxxxxxxxx> > --- > tests/xfs/298 | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/tests/xfs/298 b/tests/xfs/298 > index b0153ebf..17510379 100755 > --- a/tests/xfs/298 > +++ b/tests/xfs/298 > @@ -51,6 +51,7 @@ while [ $SIZE -lt 1024 ];do > rm $SYMLINK_FILE > # umount and check the number of extents on the inode. Should be 0. > cd / > + sleep 0.1 > _scratch_unmount >/dev/null 2>&1 What? No. Never put random undocument sleeps in tests to hide failures - they are almost always covering up a problem that needs to be understood and fixed. First thing to do here is understand why the filesystem is busy and can't unmount. What is holding a reference that prevents unmount? Is systemd or udev doing something stupid on your system and so racing with unmount? Or is something else going on? Cheers, Dave. -- Dave Chinner david@xxxxxxxxxxxxx