From 656194f1409bf7ad1802584979cde77dd22bdb43 Mon Sep 17 00:00:00 2001 From: Peter Holm Date: Thu, 3 Feb 2022 08:04:56 +0100 Subject: [PATCH] stress2: Finish work on a unionfs test scenario. Enable three unionfs tests --- tools/test/stress2/misc/all.exclude | 3 --- tools/test/stress2/misc/unionfs8.sh | 26 ++++++++++++++++---------- 2 files changed, 16 insertions(+), 13 deletions(-) diff --git a/tools/test/stress2/misc/all.exclude b/tools/test/stress2/misc/all.exclude index 54e08028e4b6..47972f162582 100644 --- a/tools/test/stress2/misc/all.exclude +++ b/tools/test/stress2/misc/all.exclude @@ -74,9 +74,6 @@ syzkaller43.sh WiP 20210906 syzkaller46.sh WiP 20210925 syzkaller47.sh WiP 20210925 truss3.sh WiP 20200915 -unionfs6.sh https://people.freebsd.org/~pho/stress/log/log0231.txt 20220112 -unionfs7.sh https://people.freebsd.org/~pho/stress/log/log0232.txt 20220113 -unionfs8.sh panic: unionfs_noderem: vnode locked recursively 20220111 unionfs9.sh https://people.freebsd.org/~pho/stress/log/log0226.txt 20220111 unionfs14.sh WiP 20220111 diff --git a/tools/test/stress2/misc/unionfs8.sh b/tools/test/stress2/misc/unionfs8.sh index 07e31dd18c50..b0d9deb354d2 100755 --- a/tools/test/stress2/misc/unionfs8.sh +++ b/tools/test/stress2/misc/unionfs8.sh @@ -62,15 +62,12 @@ umount $mp1 mdconfig -d -u $md1 mdconfig -a -t vnode -f $I -u $md1 mount -t cd9660 /dev/md$mdstart $mp1 -ls -l $mp1 mount /dev/md$md2 $mp2 chmod 777 $mp2 mount -t unionfs -o below $mp1 $mp2 set +e mount | grep -E "$mp1|$mp2" -ls -ld $mp1 $mp2 -ls -l $mp1 $mp2 export CTRLDIR=$mp2/stressX.control export INCARNATIONS=10 @@ -100,14 +97,23 @@ testcases/swap/swap export TESTPROGS=`echo $TESTPROGS | sed 's/\n/ /g'` set +e -###su $testuser -c \ -### "(cd $mp2/stress2; ./testcases/run/run $TESTPROGS)" +su $testuser -c \ + "(cd $mp2/stress2; ./testcases/run/run $TESTPROGS)" -umount $mp2 # The unionfs mount -umount $mp2 -n=`find $mp1/stressX | wc -l` -[ $n -eq 1 ] && s=0 || { find $mp1/stressX -ls | head -12; s=1; } -umount $mp1 +n=`find $mp2/stressX 2>/dev/null | wc -l` +[ $n -eq 1 ] && s=0 || { find $mp2/stressX -ls 2>/dev/null | head -12; s=1; } + +while mount | grep "on $mp2" | grep -q unionfs; do + umount $mp2 && break +done +for i in `jot 5`; do + umount $mp2 && break + sleep .5 +done +for i in `jot 5`; do + umount $mp1 && break + sleep .5 +done mdconfig -d -u $md2 mdconfig -d -u $md1 rm -f $I