summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-x.semaphore/semaphore-runner.sh2
-rw-r--r--test/testsuite-23.units/testsuite-23-namespaced.service2
-rw-r--r--test/testsuite-23.units/testsuite-23-non-namespaced.service2
-rwxr-xr-xtest/units/testsuite-03.sh2
-rwxr-xr-xtest/units/testsuite-04.SYSTEMD_JOURNAL_COMPRESS.sh2
-rwxr-xr-xtest/units/testsuite-04.journal-remote.sh8
-rwxr-xr-xtest/units/testsuite-04.journal.sh4
-rwxr-xr-xtest/units/testsuite-07.issue-2467.sh2
-rwxr-xr-xtest/units/testsuite-13.machinectl.sh10
-rwxr-xr-xtest/units/testsuite-13.nss-mymachines.sh2
-rwxr-xr-xtest/units/testsuite-17.02.sh2
-rwxr-xr-xtest/units/testsuite-23.Upholds.sh4
-rwxr-xr-xtest/units/testsuite-35.sh6
-rwxr-xr-xtest/units/testsuite-36.sh2
-rwxr-xr-xtest/units/testsuite-50.sh2
-rwxr-xr-xtest/units/testsuite-60.sh4
-rwxr-xr-xtest/units/testsuite-63.sh4
-rwxr-xr-xtest/units/testsuite-64.sh8
18 files changed, 34 insertions, 34 deletions
diff --git a/.semaphore/semaphore-runner.sh b/.semaphore/semaphore-runner.sh
index 63c5fdfea7..13456609ad 100755
--- a/.semaphore/semaphore-runner.sh
+++ b/.semaphore/semaphore-runner.sh
@@ -30,7 +30,7 @@ create_container() {
sudo lxc-attach -n "$CONTAINER" -- sh -ex <<EOF
sed 's/^deb/deb-src/' /etc/apt/sources.list >>/etc/apt/sources.list.d/sources.list
# We might attach the console too soon
-while ! systemctl --quiet --wait is-system-running; do sleep 1; done
+until systemctl --quiet --wait is-system-running; do sleep 1; done
# Manpages database trigger takes a lot of time and is not useful in a CI
echo 'man-db man-db/auto-update boolean false' | debconf-set-selections
# Speed up dpkg, image is thrown away after the test
diff --git a/test/testsuite-23.units/testsuite-23-namespaced.service b/test/testsuite-23.units/testsuite-23-namespaced.service
index 5f30b55e00..5a6f5cd873 100644
--- a/test/testsuite-23.units/testsuite-23-namespaced.service
+++ b/test/testsuite-23.units/testsuite-23-namespaced.service
@@ -10,4 +10,4 @@ PrivateTmp=yes
BindPaths=/run/testsuite-23-marker-fixed:/tmp/testfile-marker-fixed
InaccessiblePaths=/run/inaccessible
ExecStartPre=grep -q -F MARKER_FIXED /tmp/testfile-marker-fixed
-ExecStart=/bin/sh -c 'systemd-notify --ready; while ! grep -q -F MARKER_RUNTIME /tmp/testfile-marker-runtime; do sleep 0.1; done; test ! -f /run/inaccessible/testfile-marker-fixed'
+ExecStart=/bin/sh -c 'systemd-notify --ready; until grep -q -F MARKER_RUNTIME /tmp/testfile-marker-runtime; do sleep 0.1; done; test ! -f /run/inaccessible/testfile-marker-fixed'
diff --git a/test/testsuite-23.units/testsuite-23-non-namespaced.service b/test/testsuite-23.units/testsuite-23-non-namespaced.service
index 058ecb4769..6f93c3bde5 100644
--- a/test/testsuite-23.units/testsuite-23-non-namespaced.service
+++ b/test/testsuite-23.units/testsuite-23-non-namespaced.service
@@ -3,4 +3,4 @@
RuntimeMaxSec=5
Type=notify
RemainAfterExit=yes
-ExecStart=/bin/sh -c 'systemd-notify --ready; while ! grep -q -F MARKER_RUNTIME /tmp/testfile-marker-runtime; do sleep 0.1; done; exit 0'
+ExecStart=/bin/sh -c 'systemd-notify --ready; until grep -q -F MARKER_RUNTIME /tmp/testfile-marker-runtime; do sleep 0.1; done; exit 0'
diff --git a/test/units/testsuite-03.sh b/test/units/testsuite-03.sh
index e9ef31d946..e3567c2d7c 100755
--- a/test/units/testsuite-03.sh
+++ b/test/units/testsuite-03.sh
@@ -16,7 +16,7 @@ systemctl daemon-reexec
systemctl start --no-block hello-after-sleep.target
systemctl list-jobs >/root/list-jobs.txt
-while ! grep 'sleep\.service.*running' /root/list-jobs.txt; do
+until grep 'sleep\.service.*running' /root/list-jobs.txt; do
systemctl list-jobs >/root/list-jobs.txt
done
diff --git a/test/units/testsuite-04.SYSTEMD_JOURNAL_COMPRESS.sh b/test/units/testsuite-04.SYSTEMD_JOURNAL_COMPRESS.sh
index 06c52b2849..8fdf1b132e 100755
--- a/test/units/testsuite-04.SYSTEMD_JOURNAL_COMPRESS.sh
+++ b/test/units/testsuite-04.SYSTEMD_JOURNAL_COMPRESS.sh
@@ -19,7 +19,7 @@ EOF
ID="$(systemd-id128 new)"
systemd-cat -t "$ID" /bin/bash -c "for ((i=0;i<100;i++)); do echo -n hoge with ${c}; done; echo"
journalctl --sync
- timeout 10 bash -c "while ! SYSTEMD_LOG_LEVEL=debug journalctl --verify --quiet --file /var/log/journal/$MACHINE_ID/system.journal 2>&1 | grep -q -F 'compress=${c}'; do sleep .5; done"
+ timeout 10 bash -c "until SYSTEMD_LOG_LEVEL=debug journalctl --verify --quiet --file /var/log/journal/$MACHINE_ID/system.journal 2>&1 | grep -q -F 'compress=${c}'; do sleep .5; done"
# $SYSTEMD_JOURNAL_COMPRESS= also works for journal-remote
if [[ -x /usr/lib/systemd/systemd-journal-remote ]]; then
diff --git a/test/units/testsuite-04.journal-remote.sh b/test/units/testsuite-04.journal-remote.sh
index 6bdc3ccdec..c0b95caec3 100755
--- a/test/units/testsuite-04.journal-remote.sh
+++ b/test/units/testsuite-04.journal-remote.sh
@@ -81,11 +81,11 @@ systemd-analyze cat-config systemd/journal-upload.conf
systemctl restart systemd-journal-remote.socket
systemctl restart systemd-journal-upload
-timeout 15 bash -xec 'while ! systemctl -q is-active systemd-journal-remote.service; do sleep 1; done'
+timeout 15 bash -xec 'until systemctl -q is-active systemd-journal-remote.service; do sleep 1; done'
systemctl status systemd-journal-{remote,upload}
# It may take a bit until the whole journal is transferred
-timeout 30 bash -xec "while ! journalctl --directory=/var/log/journal/remote --identifier='$TEST_TAG' --grep='$TEST_MESSAGE'; do sleep 1; done"
+timeout 30 bash -xec "until journalctl --directory=/var/log/journal/remote --identifier='$TEST_TAG' --grep='$TEST_MESSAGE'; do sleep 1; done"
systemctl stop systemd-journal-upload
systemctl stop systemd-journal-remote.{socket,service}
@@ -184,11 +184,11 @@ systemd-analyze cat-config systemd/journal-upload.conf
systemctl restart systemd-journal-remote.socket
systemctl restart systemd-journal-upload
-timeout 15 bash -xec 'while ! systemctl -q is-active systemd-journal-remote.service; do sleep 1; done'
+timeout 15 bash -xec 'until systemctl -q is-active systemd-journal-remote.service; do sleep 1; done'
systemctl status systemd-journal-{remote,upload}
# It may take a bit until the whole journal is transferred
-timeout 30 bash -xec "while ! journalctl --directory=/var/log/journal/remote --identifier='$TEST_TAG' --grep='$TEST_MESSAGE'; do sleep 1; done"
+timeout 30 bash -xec "until journalctl --directory=/var/log/journal/remote --identifier='$TEST_TAG' --grep='$TEST_MESSAGE'; do sleep 1; done"
systemctl stop systemd-journal-upload
systemctl stop systemd-journal-remote.{socket,service}
diff --git a/test/units/testsuite-04.journal.sh b/test/units/testsuite-04.journal.sh
index c733ff332c..2b3929324c 100755
--- a/test/units/testsuite-04.journal.sh
+++ b/test/units/testsuite-04.journal.sh
@@ -207,9 +207,9 @@ ID="$(systemd-id128 new)"
journalctl -t "$ID" --follow --cursor-file=/tmp/issue-26746-cursor | tee /tmp/issue-26746-log &
systemd-cat -t "$ID" /bin/sh -c 'echo hogehoge'
# shellcheck disable=SC2016
-timeout 10 bash -c 'while ! [[ -f /tmp/issue-26746-log && "$(cat /tmp/issue-26746-log)" =~ hogehoge ]]; do sleep .5; done'
+timeout 10 bash -c 'until [[ -f /tmp/issue-26746-log && "$(cat /tmp/issue-26746-log)" =~ hogehoge ]]; do sleep .5; done'
pkill -TERM journalctl
-timeout 10 bash -c 'while ! test -f /tmp/issue-26746-cursor; do sleep .5; done'
+timeout 10 bash -c 'until test -f /tmp/issue-26746-cursor; do sleep .5; done'
CURSOR_FROM_FILE="$(cat /tmp/issue-26746-cursor)"
CURSOR_FROM_JOURNAL="$(journalctl -t "$ID" --output=export MESSAGE=hogehoge | sed -n -e '/__CURSOR=/ { s/__CURSOR=//; p }')"
test "$CURSOR_FROM_FILE" = "$CURSOR_FROM_JOURNAL"
diff --git a/test/units/testsuite-07.issue-2467.sh b/test/units/testsuite-07.issue-2467.sh
index 0d8c16e65a..de0577b978 100755
--- a/test/units/testsuite-07.issue-2467.sh
+++ b/test/units/testsuite-07.issue-2467.sh
@@ -13,5 +13,5 @@ nc -i20 -w20 -U /run/test.ctl || :
# TriggerLimitIntervalSec= by default is set to 2s. A "sleep 10" should give
# systemd enough time even on slower machines, to reach the trigger limit.
# shellcheck disable=SC2016
-timeout 10 bash -c 'while ! [[ "$(systemctl show issue2467.socket -P ActiveState)" == failed ]]; do sleep .5; done'
+timeout 10 bash -c 'until [[ "$(systemctl show issue2467.socket -P ActiveState)" == failed ]]; do sleep .5; done'
[[ "$(systemctl show issue2467.socket -P Result)" == trigger-limit-hit ]]
diff --git a/test/units/testsuite-13.machinectl.sh b/test/units/testsuite-13.machinectl.sh
index e27bb36270..b5f90f6d0c 100755
--- a/test/units/testsuite-13.machinectl.sh
+++ b/test/units/testsuite-13.machinectl.sh
@@ -13,7 +13,7 @@ at_exit() {
set +e
machinectl status long-running >/dev/null && machinectl kill --signal=KILL long-running
- mountpoint -q /var/lib/machines && timeout 10 sh -c "while ! umount /var/lib/machines; do sleep .5; done"
+ mountpoint -q /var/lib/machines && timeout 10 sh -c "until umount /var/lib/machines; do sleep .5; done"
[[ -n "${NSPAWN_FRAGMENT:-}" ]] && rm -f "/etc/systemd/nspawn/$NSPAWN_FRAGMENT" "/var/lib/machines/$NSPAWN_FRAGMENT"
rm -f /run/systemd/nspawn/*.nspawn
}
@@ -90,15 +90,15 @@ machinectl disable long-running long-running long-running container1
# Equivalent to machinectl kill --signal=SIGRTMIN+4 --kill-whom=leader
rm -f /var/lib/machines/long-running/poweroff
machinectl poweroff long-running
-timeout 10 bash -c "while ! test -e /var/lib/machines/long-running/poweroff; do sleep .5; done"
+timeout 10 bash -c "until test -e /var/lib/machines/long-running/poweroff; do sleep .5; done"
# Equivalent to machinectl kill --signal=SIGINT --kill-whom=leader
rm -f /var/lib/machines/long-running/reboot
machinectl reboot long-running
-timeout 10 bash -c "while ! test -e /var/lib/machines/long-running/reboot; do sleep .5; done"
+timeout 10 bash -c "until test -e /var/lib/machines/long-running/reboot; do sleep .5; done"
# Skip machinectl terminate for now, as it doesn't play well with our "init"
rm -f /var/lib/machines/long-running/trap
machinectl kill --signal=SIGTRAP --kill-whom=leader long-running
-timeout 10 bash -c "while ! test -e /var/lib/machines/long-running/trap; do sleep .5; done"
+timeout 10 bash -c "until test -e /var/lib/machines/long-running/trap; do sleep .5; done"
# Multiple machines at once
machinectl poweroff long-running long-running long-running
machinectl reboot long-running long-running long-running
@@ -183,7 +183,7 @@ machinectl import-fs /tmp/container.dir container-dir
machinectl start container-dir
rm -fr /tmp/container.dir
-timeout 10 bash -c "while ! machinectl clean --all; do sleep .5; done"
+timeout 10 bash -c "until machinectl clean --all; do sleep .5; done"
NSPAWN_FRAGMENT="machinectl-test-$RANDOM.nspawn"
cat >"/var/lib/machines/$NSPAWN_FRAGMENT" <<EOF
diff --git a/test/units/testsuite-13.nss-mymachines.sh b/test/units/testsuite-13.nss-mymachines.sh
index f5ffeab712..b566c7343d 100755
--- a/test/units/testsuite-13.nss-mymachines.sh
+++ b/test/units/testsuite-13.nss-mymachines.sh
@@ -11,7 +11,7 @@ at_exit() {
set +e
machinectl kill --signal=KILL nss-mymachines-{noip,singleip,manyips}
- mountpoint -q /var/lib/machines && timeout 10 sh -c "while ! umount /var/lib/machines; do sleep .5; done"
+ mountpoint -q /var/lib/machines && timeout 10 sh -c "until umount /var/lib/machines; do sleep .5; done"
rm -f /run/systemd/nspawn/*.nspawn
}
diff --git a/test/units/testsuite-17.02.sh b/test/units/testsuite-17.02.sh
index f5b5f372d1..b232fca668 100755
--- a/test/units/testsuite-17.02.sh
+++ b/test/units/testsuite-17.02.sh
@@ -172,7 +172,7 @@ EOF
done
test -n "$found"
- timeout 30 bash -c "while ! journalctl _PID=1 _COMM=systemd --since $since | grep -q 'foobar: systemd-udevd failed to process the device, ignoring: File exists'; do sleep 1; done"
+ timeout 30 bash -c "until journalctl _PID=1 _COMM=systemd --since $since | grep -q 'foobar: systemd-udevd failed to process the device, ignoring: File exists'; do sleep 1; done"
# check if the invalid SYSTEMD_ALIAS property for the interface foobar is ignored by PID1
assert_eq "$(systemctl show --property=SysFSPath --value /sys/subsystem/net/devices/hoge)" "/sys/devices/virtual/net/hoge"
}
diff --git a/test/units/testsuite-23.Upholds.sh b/test/units/testsuite-23.Upholds.sh
index bce4d7205b..e62f9c64de 100755
--- a/test/units/testsuite-23.Upholds.sh
+++ b/test/units/testsuite-23.Upholds.sh
@@ -46,7 +46,7 @@ rm -f /tmp/testsuite-23-retry-fail
systemctl start testsuite-23-retry-uphold.service
systemctl is-active testsuite-23-upheldby-install.service
-while ! systemctl is-failed testsuite-23-retry-fail.service ; do
+until systemctl is-failed testsuite-23-retry-fail.service ; do
sleep .5
done
@@ -54,7 +54,7 @@ done
touch /tmp/testsuite-23-retry-fail
-while ! systemctl is-active testsuite-23-retry-upheld.service ; do
+until systemctl is-active testsuite-23-retry-upheld.service ; do
sleep .5
done
diff --git a/test/units/testsuite-35.sh b/test/units/testsuite-35.sh
index f784575c99..291d156e88 100755
--- a/test/units/testsuite-35.sh
+++ b/test/units/testsuite-35.sh
@@ -171,7 +171,7 @@ EOF
evemu-device /run/lidswitch.evemu &
- timeout 20 bash -c 'while ! grep "^Fake Lid Switch" /sys/class/input/*/device/name; do sleep .5; done'
+ timeout 20 bash -c 'until grep "^Fake Lid Switch" /sys/class/input/*/device/name; do sleep .5; done'
input_name=$(grep -l '^Fake Lid Switch' /sys/class/input/*/device/name || :)
if [[ -z "$input_name" ]]; then
echo "cannot find fake lid switch." >&2
@@ -418,7 +418,7 @@ EOF
# coldplug: logind started with existing device
systemctl stop systemd-logind.service
modprobe scsi_debug
- timeout 30 bash -c 'while ! ls /sys/bus/pseudo/drivers/scsi_debug/adapter*/host*/target*/*:*/block 2>/dev/null; do sleep 1; done'
+ timeout 30 bash -c 'until ls /sys/bus/pseudo/drivers/scsi_debug/adapter*/host*/target*/*:*/block 2>/dev/null; do sleep 1; done'
dev=/dev/$(ls /sys/bus/pseudo/drivers/scsi_debug/adapter*/host*/target*/*:*/block 2>/dev/null)
if [[ ! -b "$dev" ]]; then
echo "cannot find suitable scsi block device" >&2
@@ -437,7 +437,7 @@ EOF
# hotplug: new device appears while logind is running
rmmod scsi_debug
modprobe scsi_debug
- timeout 30 bash -c 'while ! ls /sys/bus/pseudo/drivers/scsi_debug/adapter*/host*/target*/*:*/block 2>/dev/null; do sleep 1; done'
+ timeout 30 bash -c 'until ls /sys/bus/pseudo/drivers/scsi_debug/adapter*/host*/target*/*:*/block 2>/dev/null; do sleep 1; done'
dev=/dev/$(ls /sys/bus/pseudo/drivers/scsi_debug/adapter*/host*/target*/*:*/block 2>/dev/null)
if [[ ! -b "$dev" ]]; then
echo "cannot find suitable scsi block device" >&2
diff --git a/test/units/testsuite-36.sh b/test/units/testsuite-36.sh
index 334afaabe7..8a53b984a6 100755
--- a/test/units/testsuite-36.sh
+++ b/test/units/testsuite-36.sh
@@ -38,7 +38,7 @@ startStrace() {
coproc strace -qq -p 1 -o "$straceLog" -e set_mempolicy -s 1024 ${1:+"$1"}
# Wait for strace to properly "initialize", i.e. until PID 1 has the TracerPid
# field set to the current strace's PID
- while ! awk -v spid="$COPROC_PID" '/^TracerPid:/ {exit !($2 == spid);}' /proc/1/status; do sleep 0.1; done
+ until awk -v spid="$COPROC_PID" '/^TracerPid:/ {exit !($2 == spid);}' /proc/1/status; do sleep 0.1; done
}
stopStrace() {
diff --git a/test/units/testsuite-50.sh b/test/units/testsuite-50.sh
index c02dfc862c..44889779cc 100755
--- a/test/units/testsuite-50.sh
+++ b/test/units/testsuite-50.sh
@@ -549,7 +549,7 @@ systemd-run --unit=test-root-ephemeral \
test -n "$(ls -A /var/lib/systemd/ephemeral-trees)"
systemctl stop test-root-ephemeral
# shellcheck disable=SC2016
-timeout 10 bash -c 'while ! test -z "$(ls -A /var/lib/systemd/ephemeral-trees)"; do sleep .5; done'
+timeout 10 bash -c 'until test -z "$(ls -A /var/lib/systemd/ephemeral-trees)"; do sleep .5; done'
test ! -f /tmp/img/abc
systemd-dissect --mtree /tmp/img
diff --git a/test/units/testsuite-60.sh b/test/units/testsuite-60.sh
index 875cdb8ff3..e800a7a12c 100755
--- a/test/units/testsuite-60.sh
+++ b/test/units/testsuite-60.sh
@@ -286,8 +286,8 @@ done
# Figure out if we have entered the rate limit state.
# If the infra is slow we might not enter the rate limit state; in that case skip the exit check.
-if timeout 2m bash -c "while ! journalctl -u init.scope --since=$TS | grep -q '(mount-monitor-dispatch) entered rate limit'; do sleep 1; done"; then
- timeout 2m bash -c "while ! journalctl -u init.scope --since=$TS | grep -q '(mount-monitor-dispatch) left rate limit'; do sleep 1; done"
+if timeout 2m bash -c "until journalctl -u init.scope --since=$TS | grep -q '(mount-monitor-dispatch) entered rate limit'; do sleep 1; done"; then
+ timeout 2m bash -c "until journalctl -u init.scope --since=$TS | grep -q '(mount-monitor-dispatch) left rate limit'; do sleep 1; done"
fi
# Verify that the mount units are always cleaned up at the end.
diff --git a/test/units/testsuite-63.sh b/test/units/testsuite-63.sh
index dd08f4e90e..9bbd700104 100755
--- a/test/units/testsuite-63.sh
+++ b/test/units/testsuite-63.sh
@@ -16,7 +16,7 @@ touch /tmp/test63
# Make sure systemd has sufficient time to hit the trigger limit for test63.path.
# shellcheck disable=SC2016
-timeout 30 bash -c 'while ! test "$(systemctl show test63.path -P ActiveState)" = failed; do sleep .2; done'
+timeout 30 bash -c 'until test "$(systemctl show test63.path -P ActiveState)" = failed; do sleep .2; done'
test "$(systemctl show test63.service -P ActiveState)" = inactive
test "$(systemctl show test63.service -P Result)" = success
test "$(systemctl show test63.path -P Result)" = trigger-limit-hit
@@ -34,7 +34,7 @@ test "$(systemctl show test63.path -P Result)" = success
# Test that glob matching works too, with $TRIGGER_PATH
systemctl start test63-glob.path
touch /tmp/test63-glob-foo
-timeout 60 bash -c 'while ! systemctl -q is-active test63-glob.service; do sleep .2; done'
+timeout 60 bash -c 'until systemctl -q is-active test63-glob.service; do sleep .2; done'
test "$(systemctl show test63-glob.service -P ActiveState)" = active
test "$(systemctl show test63-glob.service -P Result)" = success
diff --git a/test/units/testsuite-64.sh b/test/units/testsuite-64.sh
index 0100f58c44..d223f52b6a 100755
--- a/test/units/testsuite-64.sh
+++ b/test/units/testsuite-64.sh
@@ -546,7 +546,7 @@ testcase_lvm_basic() {
# Mount mypart1 through by-label devlink
mkdir -p /tmp/mypart1-mount-point
mount /dev/disk/by-label/mylvpart1 /tmp/mypart1-mount-point
- timeout 30 bash -c "while ! systemctl -q is-active /tmp/mypart1-mount-point; do sleep .2; done"
+ timeout 30 bash -c "until systemctl -q is-active /tmp/mypart1-mount-point; do sleep .2; done"
# Extend the partition and check if the device and mount units are still active.
# See https://bugzilla.redhat.com/show_bug.cgi?id=2158628
# Note, the test below may be unstable with LVM2 without the following patch:
@@ -556,8 +556,8 @@ testcase_lvm_basic() {
# is hopefully fast.
lvm lvextend -y --size 8M "/dev/$vgroup/mypart1"
udevadm wait --settle --timeout="$timeout" "/dev/disk/by-label/mylvpart1"
- timeout 30 bash -c "while ! systemctl -q is-active '/dev/$vgroup/mypart1'; do sleep .2; done"
- timeout 30 bash -c "while ! systemctl -q is-active /tmp/mypart1-mount-point; do sleep .2; done"
+ timeout 30 bash -c "until systemctl -q is-active '/dev/$vgroup/mypart1'; do sleep .2; done"
+ timeout 30 bash -c "until systemctl -q is-active /tmp/mypart1-mount-point; do sleep .2; done"
# Umount the partition, otherwise the underlying device unit will stay in
# the inactive state and not be collected, and helper_check_device_units() will fail.
systemctl show /tmp/mypart1-mount-point
@@ -956,7 +956,7 @@ testcase_long_sysfs_path() {
echo "UUID=deadbeef-dead-dead-beef-222222222222 $mpoint ext4 defaults 0 0" >>/etc/fstab
systemctl daemon-reload
mount "$mpoint"
- timeout 30 bash -c "while ! systemctl -q is-active '$mpoint'; do sleep .2; done"
+ timeout 30 bash -c "until systemctl -q is-active '$mpoint'; do sleep .2; done"
test -e "$mpoint/test"
umount "$mpoint"