aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Holm <pho@FreeBSD.org>2022-02-03 07:04:56 +0000
committerPeter Holm <pho@FreeBSD.org>2022-02-03 07:04:56 +0000
commit656194f1409bf7ad1802584979cde77dd22bdb43 (patch)
tree2273fe8645782de1c048f7f17e984a27953a79f4
parente30fceb89b7eb51825bdd65f9cc4fbadf107d763 (diff)
downloadsrc-656194f1409bf7ad1802584979cde77dd22bdb43.tar.gz
src-656194f1409bf7ad1802584979cde77dd22bdb43.zip
stress2: Finish work on a unionfs test scenario. Enable three unionfs tests
-rw-r--r--tools/test/stress2/misc/all.exclude3
-rwxr-xr-xtools/test/stress2/misc/unionfs8.sh26
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