git: 656194f1409b - main - stress2: Finish work on a unionfs test scenario. Enable three unionfs tests

From: Peter Holm <pho_at_FreeBSD.org>
Date: Thu, 03 Feb 2022 07:06:10 UTC
The branch main has been updated by pho:

URL: https://cgit.FreeBSD.org/src/commit/?id=656194f1409bf7ad1802584979cde77dd22bdb43

commit 656194f1409bf7ad1802584979cde77dd22bdb43
Author:     Peter Holm <pho@FreeBSD.org>
AuthorDate: 2022-02-03 07:04:56 +0000
Commit:     Peter Holm <pho@FreeBSD.org>
CommitDate: 2022-02-03 07:04:56 +0000

    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