From: Dave Chinner <david@fromorbit.com>
To: fstests@vger.kernel.org
Subject: [PATCH 12/40] fstests: clean up mount and unmount operations
Date: Wed, 27 Nov 2024 15:51:42 +1100 [thread overview]
Message-ID: <20241127045403.3665299-13-david@fromorbit.com> (raw)
In-Reply-To: <20241127045403.3665299-1-david@fromorbit.com>
From: Dave Chinner <dchinner@redhat.com>
The way tests run unmount is, at times, completely random.
Sometimes they call the correct _scratch_unmount function, sometimes
they open code it with a direct call to UMOUNT_PROG <dir>, sometimes
they run umount directly.
This makes it really hard to instrument unmount operations when
trying to work out why transient, unpredictable failures like
this occur randomly during a test run:
umount: /mnt/xfs/runner-17/test: target is busy.
Sometimes it happens on a test device mount, sometimes a scratch
device mount. Sometimes it happens to a test specific dm or loop
device mount. But without instrumenting every single unmount call in
every test, it's impossible to capture these failures easily.
Solve this problem by introducing the _unmount() wrapper. It is
simply a call to UMOUNT_PROG <dir>, but it provides a single point
were -every- unmount operation funnels through.
We already have a _mount wrapper for this reason. However, in trying
to work out why mounts were failing (because unmounts were failing),
I discovered that that_mount() is used inconsistently as well.
Sort this all out by adding and _unmount() wrapper to go with
_mount() and use them everywhere consistently.
Signed-off-by: Dave Chinner <dchinner@redhat.com>
---
common/btrfs | 4 ++--
common/dmdelay | 4 ++--
common/dmdust | 4 ++--
common/dmerror | 4 ++--
common/dmflakey | 4 ++--
common/dmhugedisk | 2 +-
common/dmlogwrites | 4 ++--
common/dmthin | 4 ++--
common/overlay | 10 +++++-----
common/populate | 8 ++++----
common/rc | 42 +++++++++++++++++++++++++-----------------
tests/generic/042 | 4 ++--
tests/generic/050 | 3 ++-
tests/generic/067 | 6 +++---
tests/generic/081 | 2 +-
tests/generic/085 | 6 +++---
tests/generic/108 | 2 +-
tests/generic/171 | 2 +-
tests/generic/172 | 2 +-
tests/generic/173 | 2 +-
tests/generic/174 | 2 +-
tests/generic/306 | 2 +-
tests/generic/332 | 2 +-
tests/generic/361 | 2 +-
tests/generic/373 | 2 +-
tests/generic/374 | 2 +-
tests/generic/395 | 2 +-
tests/generic/459 | 2 +-
tests/generic/563 | 10 +++++-----
tests/generic/604 | 2 +-
tests/generic/631 | 2 +-
tests/generic/648 | 6 +++---
tests/generic/698 | 4 ++--
tests/generic/699 | 8 ++++----
tests/generic/704 | 2 +-
tests/generic/717 | 2 +-
tests/generic/730 | 2 +-
tests/generic/731 | 2 +-
tests/generic/732 | 4 ++--
tests/generic/741 | 2 +-
tests/generic/744 | 6 +++---
tests/generic/746 | 8 ++++----
tests/xfs/014 | 6 +++---
tests/xfs/073 | 20 ++++++++++----------
tests/xfs/074 | 2 +-
tests/xfs/078 | 6 +++---
tests/xfs/148 | 6 +++---
tests/xfs/149 | 4 ++--
tests/xfs/186 | 4 ++--
tests/xfs/216 | 10 ++++++++--
tests/xfs/217 | 4 ++--
tests/xfs/250 | 7 ++++---
tests/xfs/289 | 4 ++--
tests/xfs/507 | 2 +-
tests/xfs/513 | 4 ++--
tests/xfs/544 | 2 +-
tests/xfs/606 | 2 +-
tests/xfs/613 | 4 ++--
58 files changed, 149 insertions(+), 133 deletions(-)
diff --git a/common/btrfs b/common/btrfs
index 95a9c8e6c..4a2c9886e 100644
--- a/common/btrfs
+++ b/common/btrfs
@@ -352,7 +352,7 @@ _btrfs_stress_subvolume()
while [ ! -e $stop_file ]; do
$BTRFS_UTIL_PROG subvolume create $btrfs_mnt/$subvol_name
$MOUNT_PROG -o subvol=$subvol_name $btrfs_dev $subvol_mnt
- $UMOUNT_PROG $subvol_mnt
+ _unmount $subvol_mnt
$BTRFS_UTIL_PROG subvolume delete $btrfs_mnt/$subvol_name
done
}
@@ -368,7 +368,7 @@ _btrfs_kill_stress_subvolume_pid()
# Ignore if process already died.
wait $subvol_pid &> /dev/null
rm -f $stop_file
- $UMOUNT_PROG $subvol_mnt &> /dev/null
+ _unmount $subvol_mnt &> /dev/null
}
# stress btrfs by running scrub in a loop
diff --git a/common/dmdelay b/common/dmdelay
index 1c4fca6e9..848afb993 100644
--- a/common/dmdelay
+++ b/common/dmdelay
@@ -28,7 +28,7 @@ _mount_delay()
_unmount_delay()
{
- $UMOUNT_PROG $SCRATCH_MNT
+ _unmount $SCRATCH_MNT
}
_cleanup_delay()
@@ -36,7 +36,7 @@ _cleanup_delay()
# If dmsetup load fails then we need to make sure to do resume here
# otherwise the umount will hang
$DMSETUP_PROG resume $DELAY_NAME > /dev/null 2>&1
- $UMOUNT_PROG $SCRATCH_MNT > /dev/null 2>&1
+ _unmount $SCRATCH_MNT > /dev/null 2>&1
_dmsetup_remove $DELAY_NAME
}
diff --git a/common/dmdust b/common/dmdust
index 37bb865c8..55bbc84db 100644
--- a/common/dmdust
+++ b/common/dmdust
@@ -24,7 +24,7 @@ _mount_dust()
_unmount_dust()
{
- $UMOUNT_PROG $SCRATCH_MNT
+ _unmount $SCRATCH_MNT
}
_cleanup_dust()
@@ -32,6 +32,6 @@ _cleanup_dust()
# If dmsetup load fails then we need to make sure to do resume here
# otherwise the umount will hang
$DMSETUP_PROG resume $DUST_NAME > /dev/null 2>&1
- $UMOUNT_PROG $SCRATCH_MNT > /dev/null 2>&1
+ _unmount $SCRATCH_MNT > /dev/null 2>&1
_dmsetup_remove $DUST_NAME
}
diff --git a/common/dmerror b/common/dmerror
index 97796b38e..309129c03 100644
--- a/common/dmerror
+++ b/common/dmerror
@@ -101,7 +101,7 @@ _dmerror_mount()
_dmerror_unmount()
{
- umount $SCRATCH_MNT
+ _unmount $SCRATCH_MNT
}
_dmerror_cleanup()
@@ -110,7 +110,7 @@ _dmerror_cleanup()
test -n "$NON_ERROR_RTDEV" && $DMSETUP_PROG resume $DMERROR_RTNAME &>/dev/null
$DMSETUP_PROG resume $DMERROR_NAME > /dev/null 2>&1
- $UMOUNT_PROG $SCRATCH_MNT > /dev/null 2>&1
+ _unmount $SCRATCH_MNT > /dev/null 2>&1
test -n "$NON_ERROR_LOGDEV" && _dmsetup_remove $DMERROR_LOGNAME
test -n "$NON_ERROR_RTDEV" && _dmsetup_remove $DMERROR_RTNAME
diff --git a/common/dmflakey b/common/dmflakey
index 75a0a67c8..7368a3e5b 100644
--- a/common/dmflakey
+++ b/common/dmflakey
@@ -71,7 +71,7 @@ _mount_flakey()
_unmount_flakey()
{
- $UMOUNT_PROG $SCRATCH_MNT
+ _unmount $SCRATCH_MNT
}
_cleanup_flakey()
@@ -82,7 +82,7 @@ _cleanup_flakey()
test -n "$NON_FLAKEY_RTDEV" && $DMSETUP_PROG resume $FLAKEY_RTNAME &> /dev/null
$DMSETUP_PROG resume flakey-test > /dev/null 2>&1
- $UMOUNT_PROG $SCRATCH_MNT > /dev/null 2>&1
+ _unmount $SCRATCH_MNT > /dev/null 2>&1
_dmsetup_remove $FLAKEY_NAME
test -n "$NON_FLAKEY_LOGDEV" && _dmsetup_remove $FLAKEY_LOGNAME
diff --git a/common/dmhugedisk b/common/dmhugedisk
index 0757e1908..2d23f436c 100644
--- a/common/dmhugedisk
+++ b/common/dmhugedisk
@@ -42,7 +42,7 @@ _dmhugedisk_init()
_dmhugedisk_cleanup()
{
- $UMOUNT_PROG $SCRATCH_MNT > /dev/null 2>&1
+ _unmount $SCRATCH_MNT > /dev/null 2>&1
_dmsetup_remove $DMHUGE_TEST
_dmsetup_remove $DMHUGE_TEST_ZERO
}
diff --git a/common/dmlogwrites b/common/dmlogwrites
index c1c85de9d..a27e1966a 100644
--- a/common/dmlogwrites
+++ b/common/dmlogwrites
@@ -110,7 +110,7 @@ _log_writes_mount()
_log_writes_unmount()
{
- $UMOUNT_PROG $SCRATCH_MNT
+ _unmount $SCRATCH_MNT
}
# _log_writes_replay_log <mark>
@@ -141,7 +141,7 @@ _log_writes_remove()
_log_writes_cleanup()
{
- $UMOUNT_PROG $SCRATCH_MNT > /dev/null 2>&1
+ _unmount $SCRATCH_MNT > /dev/null 2>&1
_log_writes_remove
}
diff --git a/common/dmthin b/common/dmthin
index f2c00f5a7..453e43a04 100644
--- a/common/dmthin
+++ b/common/dmthin
@@ -23,7 +23,7 @@ DMTHIN_VOL_DEV="/dev/mapper/$DMTHIN_VOL_NAME"
_dmthin_cleanup()
{
- $UMOUNT_PROG $SCRATCH_MNT > /dev/null 2>&1
+ _unmount $SCRATCH_MNT > /dev/null 2>&1
_dmsetup_remove $DMTHIN_VOL_NAME
_dmsetup_remove $DMTHIN_POOL_NAME
_dmsetup_remove $DMTHIN_META_NAME
@@ -32,7 +32,7 @@ _dmthin_cleanup()
_dmthin_check_fs()
{
- $UMOUNT_PROG $SCRATCH_MNT > /dev/null 2>&1
+ _unmount $SCRATCH_MNT > /dev/null 2>&1
_check_scratch_fs $DMTHIN_VOL_DEV
}
diff --git a/common/overlay b/common/overlay
index faa9339a6..01b6622f5 100644
--- a/common/overlay
+++ b/common/overlay
@@ -142,18 +142,18 @@ _overlay_base_unmount()
[ -n "$dev" -a -n "$mnt" ] || return 0
- $UMOUNT_PROG $mnt
+ _unmount $mnt
}
_overlay_test_unmount()
{
- $UMOUNT_PROG $TEST_DIR
+ _unmount $TEST_DIR
_overlay_base_unmount "$OVL_BASE_TEST_DEV" "$OVL_BASE_TEST_DIR"
}
_overlay_scratch_unmount()
{
- $UMOUNT_PROG $SCRATCH_MNT
+ _unmount $SCRATCH_MNT
_overlay_base_unmount "$OVL_BASE_SCRATCH_DEV" "$OVL_BASE_SCRATCH_MNT"
}
@@ -342,7 +342,7 @@ _overlay_check_scratch_dirs()
# Need to umount overlay for scratch dir check
local ovl_mounted=`_is_dir_mountpoint $SCRATCH_MNT`
- [ -z "$ovl_mounted" ] || $UMOUNT_PROG $SCRATCH_MNT
+ [ -z "$ovl_mounted" ] || _unmount $SCRATCH_MNT
# Check dirs with extra overlay options
_overlay_check_dirs $lowerdir $upperdir $workdir $*
@@ -387,7 +387,7 @@ _overlay_check_fs()
else
# Check and umount overlay for dir check
ovl_mounted=`_is_dir_mountpoint $ovl_mnt`
- [ -z "$ovl_mounted" ] || $UMOUNT_PROG $ovl_mnt
+ [ -z "$ovl_mounted" ] || _unmount $ovl_mnt
fi
_overlay_check_dirs $base_mnt/$OVL_LOWER $base_mnt/$OVL_UPPER \
diff --git a/common/populate b/common/populate
index 88c8ba2b3..4cf9c0691 100644
--- a/common/populate
+++ b/common/populate
@@ -517,7 +517,7 @@ _scratch_xfs_populate() {
__populate_fragment_file "${SCRATCH_MNT}/RTRMAPBT"
__populate_fragment_file "${SCRATCH_MNT}/REFCOUNTBT"
- umount "${SCRATCH_MNT}"
+ _scratch_unmount
}
# Populate an ext4 on the scratch device with (we hope) all known
@@ -619,7 +619,7 @@ _scratch_ext4_populate() {
# Make sure we get all the fragmentation we asked for
__populate_fragment_file "${SCRATCH_MNT}/S_IFREG.FMT_ETREE"
- umount "${SCRATCH_MNT}"
+ _scratch_unmount
}
# Find the inode number of a file
@@ -772,7 +772,7 @@ _scratch_xfs_populate_check() {
dblksz="$(_xfs_get_dir_blocksize "$SCRATCH_MNT")"
leaf_lblk="$((32 * 1073741824 / blksz))"
node_lblk="$((64 * 1073741824 / blksz))"
- umount "${SCRATCH_MNT}"
+ _scratch_unmount
__populate_check_xfs_dformat "${extents_file}" "extents"
__populate_check_xfs_dformat "${btree_file}" "btree"
@@ -885,7 +885,7 @@ _scratch_ext4_populate_check() {
extents_slink="$(__populate_find_inode "${SCRATCH_MNT}/S_IFLNK.FMT_EXTENTS")"
local_attr="$(__populate_find_inode "${SCRATCH_MNT}/ATTR.FMT_LOCAL")"
block_attr="$(__populate_find_inode "${SCRATCH_MNT}/ATTR.FMT_BLOCK")"
- umount "${SCRATCH_MNT}"
+ _scratch_unmount
__populate_check_ext4_dformat "${extents_file}" "extents"
__populate_check_ext4_dformat "${etree_file}" "etree"
diff --git a/common/rc b/common/rc
index 6f939e3b5..3f35da7fe 100644
--- a/common/rc
+++ b/common/rc
@@ -301,7 +301,7 @@ _put_mount()
local last_mnt=`echo $MOUNTED_POINT_STACK | awk '{print $1}'`
if [ -n "$last_mnt" ]; then
- $UMOUNT_PROG $last_mnt
+ _unmount $last_mnt
fi
MOUNTED_POINT_STACK=`echo $MOUNTED_POINT_STACK | cut -d\ -f2-`
}
@@ -310,7 +310,7 @@ _put_mount()
_clear_mount_stack()
{
if [ -n "$MOUNTED_POINT_STACK" ]; then
- $UMOUNT_PROG $MOUNTED_POINT_STACK
+ _unmount -R $MOUNTED_POINT_STACK
fi
MOUNTED_POINT_STACK=""
}
@@ -448,6 +448,14 @@ _scratch_mount_idmapped()
fi
}
+# Unmount the filesystem based on the directory or device passed.
+_unmount()
+{
+ local args="$*"
+
+ $UMOUNT_PROG $args >> $seqres.full 2>&1
+}
+
_scratch_unmount()
{
case "$FSTYP" in
@@ -455,20 +463,20 @@ _scratch_unmount()
_overlay_scratch_unmount
;;
btrfs)
- $UMOUNT_PROG $SCRATCH_MNT
+ _unmount $SCRATCH_MNT
;;
tmpfs)
- $UMOUNT_PROG $SCRATCH_MNT
+ _unmount $SCRATCH_MNT
;;
*)
- $UMOUNT_PROG $SCRATCH_DEV
+ _unmount $SCRATCH_DEV
;;
esac
}
_scratch_umount_idmapped()
{
- $UMOUNT_PROG $SCRATCH_MNT
+ _unmount $SCRATCH_MNT
}
_scratch_remount()
@@ -492,7 +500,7 @@ _scratch_cycle_mount()
;;
overlay)
if [ "$OVL_BASE_FSTYP" = tmpfs ]; then
- $UMOUNT_PROG $SCRATCH_MNT
+ _unmount $SCRATCH_MNT
unmounted=true
fi
;;
@@ -540,9 +548,9 @@ _move_mount()
# Replace $mnt with $tmp. Use a temporary bind-mount because
# mount --move will fail with certain mount propagation layouts.
- $UMOUNT_PROG $mnt || _fail "Failed to unmount $mnt"
+ _unmount $mnt || _fail "Failed to unmount $mnt"
_mount --bind $tmp $mnt || _fail "Failed to bind-mount $tmp to $mnt"
- $UMOUNT_PROG $tmp || _fail "Failed to unmount $tmp"
+ _unmount $tmp || _fail "Failed to unmount $tmp"
rmdir $tmp
}
@@ -608,7 +616,7 @@ _test_unmount()
if [ "$FSTYP" == "overlay" ]; then
_overlay_test_unmount
else
- $UMOUNT_PROG $TEST_DEV
+ _unmount $TEST_DEV
fi
}
@@ -622,7 +630,7 @@ _test_cycle_mount()
;;
overlay)
if [ "$OVL_BASE_FSTYP" = tmpfs ]; then
- $UMOUNT_PROG $TEST_DIR
+ _unmount $TEST_DIR
unmounted=true
fi
;;
@@ -1376,7 +1384,7 @@ _repair_scratch_fs()
_scratch_xfs_repair -L 2>&1
echo "log zap returns $?"
else
- umount "$SCRATCH_MNT"
+ _unmount "$SCRATCH_MNT"
fi
_scratch_xfs_repair "$@" 2>&1
res=$?
@@ -1408,7 +1416,7 @@ _repair_scratch_fs()
# Fall through to repair base fs
dev=$OVL_BASE_SCRATCH_DEV
fstyp=$OVL_BASE_FSTYP
- $UMOUNT_PROG $OVL_BASE_SCRATCH_MNT
+ _unmount $OVL_BASE_SCRATCH_MNT
fi
# Let's hope fsck -y suffices...
fsck -t $fstyp -y $dev 2>&1
@@ -1441,7 +1449,7 @@ _repair_test_fs()
_test_xfs_repair -L >>$tmp.repair 2>&1
echo "log zap returns $?" >> $tmp.repair
else
- umount "$TEST_DEV"
+ _unmount "$TEST_DEV"
fi
_test_xfs_repair "$@" >>$tmp.repair 2>&1
res=$?
@@ -2222,7 +2230,7 @@ _require_logdev()
_notrun "This test requires USE_EXTERNAL to be enabled"
# ensure its not mounted
- $UMOUNT_PROG $SCRATCH_LOGDEV 2>/dev/null
+ _unmount $SCRATCH_LOGDEV 2>/dev/null
}
# This test requires that an external log device is not in use
@@ -3309,7 +3317,7 @@ _umount_or_remount_ro()
local mountpoint=`_is_dev_mounted $device`
if [ $USE_REMOUNT -eq 0 ]; then
- $UMOUNT_PROG $device
+ _unmount $device
else
_remount $device ro
fi
@@ -3826,7 +3834,7 @@ _require_scratch_dev_pool()
_notrun "$i is part of TEST_DEV, this test requires unique disks"
fi
if _mount | grep -q $i; then
- if ! $UMOUNT_PROG $i; then
+ if ! _unmount $i; then
echo "failed to unmount $i - aborting"
exit 1
fi
diff --git a/tests/generic/042 b/tests/generic/042
index fd0ef705a..ced145dde 100755
--- a/tests/generic/042
+++ b/tests/generic/042
@@ -44,7 +44,7 @@ _crashtest()
_filter_xfs_io
$here/src/godown -f $mnt
- $UMOUNT_PROG $mnt
+ _unmount $mnt
_mount $img $mnt
# We should /never/ see 0xCD in the file, because we wrote that pattern
@@ -54,7 +54,7 @@ _crashtest()
_hexdump $file
fi
- $UMOUNT_PROG $mnt
+ _unmount $mnt
}
# Modify as appropriate.
diff --git a/tests/generic/050 b/tests/generic/050
index ca02d3092..8e9456db2 100755
--- a/tests/generic/050
+++ b/tests/generic/050
@@ -87,8 +87,9 @@ blockdev --setro $SCRATCH_DEV
echo "mounting filesystem that needs recovery on a read-only device:"
_try_scratch_mount 2>&1 | _filter_ro_mount | _filter_scratch
+# expects an error, so open code the unmount
echo "unmounting read-only filesystem"
-_scratch_unmount 2>&1 | _filter_scratch | _filter_ending_dot
+$UMOUNT_PROG $SCRATCH_DEV 2>&1 | _filter_scratch | _filter_ending_dot
#
# This is the way out if the underlying device really is read-only.
diff --git a/tests/generic/067 b/tests/generic/067
index b561b7bc5..ccb1e3fbb 100755
--- a/tests/generic/067
+++ b/tests/generic/067
@@ -66,7 +66,7 @@ umount_symlink_device()
rm -f $symlink
echo "# umount symlink to device, which is not mounted" >>$seqres.full
ln -s $SCRATCH_DEV $symlink
- $UMOUNT_PROG $symlink >>$seqres.full 2>&1
+ _unmount $symlink >>$seqres.full 2>&1
}
# umount a path name that is 256 bytes long, this should fail gracefully,
@@ -78,7 +78,7 @@ umount_toolong_name()
_scratch_mount 2>&1 | tee -a $seqres.full
echo "# umount a too-long name" >>$seqres.full
- $UMOUNT_PROG $longname >>$seqres.full 2>&1
+ _unmount $longname >>$seqres.full 2>&1
_scratch_unmount 2>&1 | tee -a $seqres.full
}
@@ -93,7 +93,7 @@ lazy_umount_symlink()
rm -f $symlink
ln -s $SCRATCH_MNT/testdir $symlink
- $UMOUNT_PROG -l $symlink >>$seqres.full 2>&1
+ _unmount -l $symlink >>$seqres.full 2>&1
# _scratch_unmount should not be blocked
_scratch_unmount 2>&1 | tee -a $seqres.full
}
diff --git a/tests/generic/081 b/tests/generic/081
index 468c87ac9..df17ab6c1 100755
--- a/tests/generic/081
+++ b/tests/generic/081
@@ -32,7 +32,7 @@ _cleanup()
# other tests to fail.
while test -e /dev/mapper/$vgname-$snapname || \
test -e /dev/mapper/$vgname-$lvname; do
- $UMOUNT_PROG $mnt >> $seqres.full 2>&1
+ _unmount $mnt >> $seqres.full 2>&1
$LVM_PROG lvremove -f $vgname/$snapname >>$seqres.full 2>&1
$LVM_PROG lvremove -f $vgname/$lvname >>$seqres.full 2>&1
$LVM_PROG vgremove -f $vgname >>$seqres.full 2>&1
diff --git a/tests/generic/085 b/tests/generic/085
index cfe6112d6..8fbcdce2e 100755
--- a/tests/generic/085
+++ b/tests/generic/085
@@ -27,7 +27,7 @@ cleanup_dmdev()
$DMSETUP_PROG resume $lvdev >/dev/null 2>&1
[ -n "$pid" ] && kill -9 $pid 2>/dev/null
wait $pid
- $UMOUNT_PROG $lvdev >/dev/null 2>&1
+ _unmount $lvdev >/dev/null 2>&1
_dmsetup_remove $node
}
@@ -69,8 +69,8 @@ for ((i=0; i<100; i++)); do
done &
pid=$!
for ((i=0; i<100; i++)); do
- $MOUNT_PROG $lvdev $SCRATCH_MNT >/dev/null 2>&1
- $UMOUNT_PROG $lvdev >/dev/null 2>&1
+ _mount $lvdev $SCRATCH_MNT >/dev/null 2>&1
+ _unmount $lvdev >/dev/null 2>&1
done &
pid="$pid $!"
diff --git a/tests/generic/108 b/tests/generic/108
index da13715f2..2709472f6 100755
--- a/tests/generic/108
+++ b/tests/generic/108
@@ -18,7 +18,7 @@ _cleanup()
{
cd /
echo running > /sys/block/`_short_dev $SCSI_DEBUG_DEV`/device/state
- $UMOUNT_PROG $SCRATCH_MNT >>$seqres.full 2>&1
+ _unmount $SCRATCH_MNT >>$seqres.full 2>&1
$LVM_PROG vgremove -f $vgname >>$seqres.full 2>&1
$LVM_PROG pvremove -f $SCRATCH_DEV $SCSI_DEBUG_DEV >>$seqres.full 2>&1
$UDEV_SETTLE_PROG
diff --git a/tests/generic/171 b/tests/generic/171
index 5c8504d26..8726ee61d 100755
--- a/tests/generic/171
+++ b/tests/generic/171
@@ -36,7 +36,7 @@ mkdir $testdir
echo "Reformat with appropriate size"
blksz="$(_get_block_size $testdir)"
nr_blks=10240
-umount $SCRATCH_MNT
+_scratch_unmount
sz_bytes=$((nr_blks * 8 * blksz))
if [ $sz_bytes -lt $((32 * 1048576)) ]; then
sz_bytes=$((32 * 1048576))
diff --git a/tests/generic/172 b/tests/generic/172
index 17f817805..b67e817b6 100755
--- a/tests/generic/172
+++ b/tests/generic/172
@@ -35,7 +35,7 @@ mkdir $testdir
echo "Reformat with appropriate size"
blksz="$(_get_block_size $testdir)"
-umount $SCRATCH_MNT
+_scratch_unmount
file_size=$((768 * 1024 * 1024))
fs_size=$((1024 * 1024 * 1024))
diff --git a/tests/generic/173 b/tests/generic/173
index d7ac7b15d..a19ff8070 100755
--- a/tests/generic/173
+++ b/tests/generic/173
@@ -36,7 +36,7 @@ mkdir $testdir
echo "Reformat with appropriate size"
blksz="$(_get_block_size $testdir)"
nr_blks=10240
-umount $SCRATCH_MNT
+_scratch_unmount
sz_bytes=$((nr_blks * 8 * blksz))
if [ $sz_bytes -lt $((32 * 1048576)) ]; then
sz_bytes=$((32 * 1048576))
diff --git a/tests/generic/174 b/tests/generic/174
index c7c62001d..32343d911 100755
--- a/tests/generic/174
+++ b/tests/generic/174
@@ -37,7 +37,7 @@ mkdir $testdir
echo "Reformat with appropriate size"
blksz="$(_get_block_size $testdir)"
nr_blks=10240
-umount $SCRATCH_MNT
+_scratch_unmount
sz_bytes=$((nr_blks * 8 * blksz))
if [ $sz_bytes -lt $((32 * 1048576)) ]; then
sz_bytes=$((32 * 1048576))
diff --git a/tests/generic/306 b/tests/generic/306
index a6ea654b6..8e118472d 100755
--- a/tests/generic/306
+++ b/tests/generic/306
@@ -12,7 +12,7 @@ _begin_fstest auto quick rw
# Override the default cleanup function.
_cleanup()
{
- umount $BINDFILE
+ _unmount $BINDFILE
cd /
rm -f $tmp.*
}
diff --git a/tests/generic/332 b/tests/generic/332
index cb15e77bd..fef4eabb8 100755
--- a/tests/generic/332
+++ b/tests/generic/332
@@ -61,7 +61,7 @@ md5sum $testdir/file1 | _filter_scratch
md5sum $testdir/file2 | _filter_scratch
echo "Check for damage"
-umount $SCRATCH_MNT
+_scratch_unmount
_repair_scratch_fs >> $seqres.full
# success, all done
diff --git a/tests/generic/361 b/tests/generic/361
index c56157391..7273dd056 100755
--- a/tests/generic/361
+++ b/tests/generic/361
@@ -16,7 +16,7 @@ _begin_fstest auto quick
# Override the default cleanup function.
_cleanup()
{
- $UMOUNT_PROG $fs_mnt
+ _unmount $fs_mnt
_destroy_loop_device $loop_dev
cd /
rm -f $tmp.*
diff --git a/tests/generic/373 b/tests/generic/373
index 3bd46963a..e6334398f 100755
--- a/tests/generic/373
+++ b/tests/generic/373
@@ -60,7 +60,7 @@ md5sum $testdir/file | _filter_scratch
md5sum $othertestdir/otherfile | filter_otherdir
echo "Unmount otherdir"
-$UMOUNT_PROG $otherdir
+_unmount $otherdir
rm -rf $otherdir
# success, all done
diff --git a/tests/generic/374 b/tests/generic/374
index acb23d172..e56521aa0 100755
--- a/tests/generic/374
+++ b/tests/generic/374
@@ -59,7 +59,7 @@ echo "Check output"
md5sum $testdir/file $othertestdir/otherfile | filter_md5
echo "Unmount otherdir"
-$UMOUNT_PROG $otherdir
+_unmount $otherdir
rm -rf $otherdir
# success, all done
diff --git a/tests/generic/395 b/tests/generic/395
index 45787fff0..f9c331adb 100755
--- a/tests/generic/395
+++ b/tests/generic/395
@@ -75,7 +75,7 @@ mount --bind $SCRATCH_MNT $SCRATCH_MNT/ro_bind_mnt
mount -o remount,ro,bind $SCRATCH_MNT/ro_bind_mnt
_set_encpolicy $SCRATCH_MNT/ro_bind_mnt/ro_dir |& _filter_scratch
_get_encpolicy $SCRATCH_MNT/ro_bind_mnt/ro_dir |& _filter_scratch
-umount $SCRATCH_MNT/ro_bind_mnt
+_unmount $SCRATCH_MNT/ro_bind_mnt
# success, all done
status=0
diff --git a/tests/generic/459 b/tests/generic/459
index 98177f6b5..daccc80ce 100755
--- a/tests/generic/459
+++ b/tests/generic/459
@@ -28,7 +28,7 @@ _cleanup()
xfs_freeze -u $SCRATCH_MNT 2>/dev/null
cd /
rm -f $tmp.*
- $UMOUNT_PROG $SCRATCH_MNT >>$seqres.full 2>&1
+ _unmount $SCRATCH_MNT >>$seqres.full 2>&1
$LVM_PROG vgremove -ff $vgname >>$seqres.full 2>&1
$LVM_PROG pvremove -ff $SCRATCH_DEV >>$seqres.full 2>&1
$UDEV_SETTLE_PROG
diff --git a/tests/generic/563 b/tests/generic/563
index e8db8acf0..f0d2f404c 100755
--- a/tests/generic/563
+++ b/tests/generic/563
@@ -16,13 +16,13 @@ _begin_fstest auto quick
# Override the default cleanup function.
_cleanup()
{
+ echo $$ > $cgdir/cgroup.procs
+ rmdir $cgdir/$seq-cg* > /dev/null 2>&1
+ _unmount $SCRATCH_MNT > /dev/null 2>&1
+ _destroy_loop_device $LOOP_DEV > /dev/null 2>&1
cd /
rm -f $tmp.*
- echo $$ > $cgdir/cgroup.procs
- rmdir $cgdir/$seq-cg* > /dev/null 2>&1
- umount $SCRATCH_MNT > /dev/null 2>&1
- _destroy_loop_device $LOOP_DEV > /dev/null 2>&1
}
# Import common functions.
@@ -80,7 +80,7 @@ reset()
rmdir $cgdir/$seq-cg* > /dev/null 2>&1
$XFS_IO_PROG -fc "pwrite 0 $iosize" $SCRATCH_MNT/file \
>> $seqres.full 2>&1
- umount $SCRATCH_MNT || _fail "umount failed"
+ _unmount $SCRATCH_MNT || _fail "umount failed"
_mount $LOOP_DEV $SCRATCH_MNT || _fail "mount failed"
stat $SCRATCH_MNT/file > /dev/null
}
diff --git a/tests/generic/604 b/tests/generic/604
index c2e03c2ea..744d34565 100755
--- a/tests/generic/604
+++ b/tests/generic/604
@@ -26,7 +26,7 @@ done
# mount the base fs. Delay the mount attempt by a small amount in the hope
# that the mount() call will try to lock s_umount /after/ umount has already
# taken it.
-$UMOUNT_PROG $SCRATCH_MNT &
+_unmount $SCRATCH_MNT &
sleep 0.01s ; _scratch_mount
wait
diff --git a/tests/generic/631 b/tests/generic/631
index c7c95e560..642d47863 100755
--- a/tests/generic/631
+++ b/tests/generic/631
@@ -84,7 +84,7 @@ worker() {
touch $mergedir/etc/access.conf
mv $mergedir/etc/access.conf $mergedir/etc/access.conf.bak
touch $mergedir/etc/access.conf
- umount $mergedir
+ _unmount $mergedir
done
rm -f $SCRATCH_MNT/workers/$tag
}
diff --git a/tests/generic/648 b/tests/generic/648
index e4c9990e1..7473c9d33 100755
--- a/tests/generic/648
+++ b/tests/generic/648
@@ -18,7 +18,7 @@ _cleanup()
{
_kill_fsstress
if [ -n "$loopmnt" ]; then
- $UMOUNT_PROG $loopmnt 2>/dev/null
+ _unmount $loopmnt 2>/dev/null
rm -r -f $loopmnt
fi
_dmerror_unmount
@@ -102,7 +102,7 @@ while _soak_loop_running $((25 * TIME_FACTOR)); do
# Mount again to replay log after loading working table, so we have a
# consistent fs after test.
- $UMOUNT_PROG $loopmnt
+ _unmount $loopmnt
is_unmounted=1
# We must unmount dmerror at here, or whole later testing will crash.
# So try to umount enough times, before we have no choice.
@@ -128,7 +128,7 @@ done
# Make sure the fs image file is ok
if [ -f "$loopimg" ]; then
if _mount $loopimg $loopmnt -o loop; then
- $UMOUNT_PROG $loopmnt &> /dev/null
+ _unmount $loopmnt &> /dev/null
else
_metadump_dev $DMERROR_DEV $seqres.scratch.final.md
echo "final scratch mount failed"
diff --git a/tests/generic/698 b/tests/generic/698
index 28928b2fb..0029df90f 100755
--- a/tests/generic/698
+++ b/tests/generic/698
@@ -17,8 +17,8 @@ _begin_fstest auto quick perms attr idmapped mount
_cleanup()
{
cd /
- $UMOUNT_PROG $SCRATCH_MNT/target-mnt 2>/dev/null
- $UMOUNT_PROG $SCRATCH_MNT 2>/dev/null
+ _unmount $SCRATCH_MNT/target-mnt 2>/dev/null
+ _unmount $SCRATCH_MNT 2>/dev/null
rm -r -f $tmp.*
}
diff --git a/tests/generic/699 b/tests/generic/699
index 677307538..3079a861d 100755
--- a/tests/generic/699
+++ b/tests/generic/699
@@ -15,9 +15,9 @@ _begin_fstest auto quick perms attr idmapped mount
_cleanup()
{
cd /
- $UMOUNT_PROG $SCRATCH_MNT/target-mnt
- $UMOUNT_PROG $SCRATCH_MNT/ovl-merge 2>/dev/null
- $UMOUNT_PROG $SCRATCH_MNT 2>/dev/null
+ _unmount $SCRATCH_MNT/target-mnt
+ _unmount $SCRATCH_MNT/ovl-merge 2>/dev/null
+ _unmount $SCRATCH_MNT 2>/dev/null
rm -r -f $tmp.*
}
@@ -113,7 +113,7 @@ setup_overlayfs_idmapped_lower_metacopy_on()
reset_overlayfs()
{
- $UMOUNT_PROG $SCRATCH_MNT/ovl-merge 2>/dev/null
+ _unmount $SCRATCH_MNT/ovl-merge 2>/dev/null
rm -rf $upper $work $merge
}
diff --git a/tests/generic/704 b/tests/generic/704
index f39d47066..f452f9e9c 100755
--- a/tests/generic/704
+++ b/tests/generic/704
@@ -14,7 +14,7 @@ _cleanup()
{
cd /
rm -r -f $tmp.*
- [ -d "$SCSI_DEBUG_MNT" ] && $UMOUNT_PROG $SCSI_DEBUG_MNT 2>/dev/null
+ [ -d "$SCSI_DEBUG_MNT" ] && _unmount $SCSI_DEBUG_MNT 2>/dev/null
_put_scsi_debug_dev
}
diff --git a/tests/generic/717 b/tests/generic/717
index 4378e964a..2ecd2888d 100755
--- a/tests/generic/717
+++ b/tests/generic/717
@@ -85,7 +85,7 @@ mkdir -p $SCRATCH_MNT/xyz
mount --bind $dir $SCRATCH_MNT/xyz --bind
_pwrite_byte 0x60 0 $((blksz * (nrblks + 2))) $dir/c >> $seqres.full
$XFS_IO_PROG -c "exchangerange $SCRATCH_MNT/xyz/c" $dir/a
-umount $SCRATCH_MNT/xyz
+_unmount $SCRATCH_MNT/xyz
echo Swapping a file with itself
$XFS_IO_PROG -c "exchangerange $dir/a" $dir/a
diff --git a/tests/generic/730 b/tests/generic/730
index 062314ea0..6251980e3 100755
--- a/tests/generic/730
+++ b/tests/generic/730
@@ -12,7 +12,7 @@ _begin_fstest auto quick
_cleanup()
{
cd /
- $UMOUNT_PROG $SCSI_DEBUG_MNT >>$seqres.full 2>&1
+ _unmount $SCSI_DEBUG_MNT >>$seqres.full 2>&1
_put_scsi_debug_dev
rm -f $tmp.*
}
diff --git a/tests/generic/731 b/tests/generic/731
index cd39e8b09..4ac5e1a3e 100755
--- a/tests/generic/731
+++ b/tests/generic/731
@@ -13,7 +13,7 @@ _begin_fstest auto quick
_cleanup()
{
cd /
- $UMOUNT_PROG $SCSI_DEBUG_MNT >>$seqres.full 2>&1
+ _unmount $SCSI_DEBUG_MNT >>$seqres.full 2>&1
_put_scsi_debug_dev
rm -f $tmp.*
}
diff --git a/tests/generic/732 b/tests/generic/732
index d08028c23..e907a009f 100755
--- a/tests/generic/732
+++ b/tests/generic/732
@@ -15,8 +15,8 @@ _begin_fstest auto quick rename
# Override the default cleanup function.
_cleanup()
{
- $UMOUNT_PROG $testdir1 2>/dev/null
- $UMOUNT_PROG $testdir2 2>/dev/null
+ _unmount $testdir1 2>/dev/null
+ _unmount $testdir2 2>/dev/null
cd /
rm -r -f $tmp.*
}
diff --git a/tests/generic/741 b/tests/generic/741
index 4b480b5a1..cac7045eb 100755
--- a/tests/generic/741
+++ b/tests/generic/741
@@ -13,7 +13,7 @@ _begin_fstest auto quick volume tempfsid
# Override the default cleanup function.
_cleanup()
{
- umount $extra_mnt &> /dev/null
+ _unmount $extra_mnt &> /dev/null
rm -rf $extra_mnt
_unmount_flakey
_cleanup_flakey
diff --git a/tests/generic/744 b/tests/generic/744
index a31d8d7a4..df8f6ae9b 100755
--- a/tests/generic/744
+++ b/tests/generic/744
@@ -15,8 +15,8 @@ _cleanup()
cd /
rm -r -f $tmp.*
- $UMOUNT_PROG $mnt2 &> /dev/null
- $UMOUNT_PROG $mnt1 &> /dev/null
+ _unmount $mnt2 &> /dev/null
+ _unmount $mnt1 &> /dev/null
[ -b "$loop_dev2" ] && losetup -d $loop_dev2
[ -b "$loop_dev1" ] && losetup -d $loop_dev1
[ -n "$seq" ] && rm -rf $TEST_DIR/$seq
@@ -42,7 +42,7 @@ clone_filesystem()
_mount $dev1 $mnt1
$XFS_IO_PROG -fc 'pwrite -S 0x61 0 9000' $mnt1/foo >> $seqres.full
- $UMOUNT_PROG $mnt1
+ _unmount $mnt1
# device dump of $dev1 to $dev2
dd if=$dev1 of=$dev2 conv=fsync status=none || _fail "dd failed: $?"
diff --git a/tests/generic/746 b/tests/generic/746
index 5734f254d..671910606 100755
--- a/tests/generic/746
+++ b/tests/generic/746
@@ -38,7 +38,7 @@ esac
# Override the default cleanup function.
_cleanup()
{
- $UMOUNT_PROG $loop_dev &> /dev/null
+ _unmount $loop_mnt &> /dev/null
_destroy_loop_device $loop_dev
if [ $status -eq 0 ]; then
rm -rf $tmp
@@ -53,7 +53,7 @@ get_holes()
# in-core state that will perturb the free space map on umount. Stick
# to established convention which requires the filesystem to be
# unmounted while we probe the underlying file.
- $UMOUNT_PROG $loop_mnt
+ _unmount $loop_mnt
# FIEMAP only works on regular files, so call it on the backing file
# and not the loop device like everything else
@@ -66,7 +66,7 @@ get_free_sectors()
{
case $FSTYP in
ext4)
- $UMOUNT_PROG $loop_mnt
+ _unmount $loop_mnt
$DUMPE2FS_PROG $loop_dev 2>&1 | grep " Free blocks" | cut -d ":" -f2- | \
tr ',' '\n' | $SED_PROG 's/^ //' | \
$AWK_PROG -v spb=$sectors_per_block 'BEGIN{FS="-"};
@@ -80,7 +80,7 @@ get_free_sectors()
xfs)
agsize=`$XFS_INFO_PROG $loop_mnt | $SED_PROG -n 's/.*agsize=\(.*\) blks.*/\1/p'`
# Convert free space (agno, block, length) to (start sector, end sector)
- $UMOUNT_PROG $loop_mnt
+ _unmount $loop_mnt
$XFS_DB_PROG -r -c "freesp -d" $loop_dev | $SED_PROG '/^.*from/,$d'| \
$AWK_PROG -v spb=$sectors_per_block -v agsize=$agsize \
'{ print spb * ($1 * agsize + $2), spb * ($1 * agsize + $2 + $3) - 1 }'
diff --git a/tests/xfs/014 b/tests/xfs/014
index 098f64186..f638e4b16 100755
--- a/tests/xfs/014
+++ b/tests/xfs/014
@@ -22,7 +22,7 @@ _begin_fstest auto enospc quick quota prealloc
_cleanup()
{
cd /
- umount $LOOP_MNT 2>/dev/null
+ _unmount $LOOP_MNT 2>/dev/null
_scratch_unmount 2>/dev/null
rm -f $tmp.*
}
@@ -168,13 +168,13 @@ LOOP_MNT=$SCRATCH_MNT/$seq.mnt
$MKFS_XFS_PROG -d "file=1,name=$LOOP_FILE,size=10g" >> $seqres.full 2>&1
mkdir -p $LOOP_MNT
-mount -t xfs -o loop,uquota,gquota $LOOP_FILE $LOOP_MNT || \
+_mount -o uquota,gquota $LOOP_FILE $LOOP_MNT || \
_fail "Failed to mount loop fs."
_test_enospc $LOOP_MNT
_test_edquot $LOOP_MNT
-umount $LOOP_MNT
+_unmount $LOOP_MNT
echo $orig_sp_time > /proc/sys/fs/xfs/speculative_prealloc_lifetime
diff --git a/tests/xfs/073 b/tests/xfs/073
index 28f1fad08..e4b17c5e7 100755
--- a/tests/xfs/073
+++ b/tests/xfs/073
@@ -21,9 +21,9 @@ _cleanup()
{
cd /
_scratch_unmount 2>/dev/null
- umount $imgs.loop 2>/dev/null
+ _unmount $imgs.loop 2>/dev/null
+ _unmount $imgs.source_dir 2>/dev/null
[ -d $imgs.loop ] && rmdir $imgs.loop
- umount $imgs.source_dir 2>/dev/null
[ -d $imgs.source_dir ] && rm -rf $imgs.source_dir
rm -f $imgs.* $tmp.* /var/tmp/xfs_copy.log.*
}
@@ -65,10 +65,10 @@ _verify_copy()
rmdir $target_dir 2>/dev/null
mkdir $target_dir
- mount -t xfs -o loop $target $target_dir 2>/dev/null
+ _mount -t xfs -o loop $target $target_dir 2>/dev/null
if [ $? -ne 0 ]; then
echo retrying mount with nouuid option >>$seqres.full
- mount -t xfs -o loop -o nouuid $target $target_dir
+ _mount -t xfs -o loop -o nouuid $target $target_dir
if [ $? -ne 0 ]; then
echo mount failed - evil!
return
@@ -87,19 +87,19 @@ _verify_copy()
echo comparing new image geometry to old
$XFS_INFO_PROG $source_dir \
- | _filter_copy $source $source_dir '/dev/loop.' '#' \
+ | _filter_copy $source $source_dir '/dev/loop[0-9]\+' '#' \
| tr -s ' ' \
> $tmp.geometry1
$XFS_INFO_PROG $target_dir \
- | _filter_copy $target $target_dir '/dev/loop.' '#' \
+ | _filter_copy $target $target_dir '/dev/loop[0-9]\+' '#' \
| tr -s ' ' \
> $tmp.geometry2
[ -s $tmp.geometry1 ] || echo no geometry output
diff -u $tmp.geometry1 $tmp.geometry2
echo unmounting and removing new image
- umount $source_dir
- umount $target_dir > /dev/null 2>&1
+ _unmount $source_dir
+ _unmount $target_dir > /dev/null 2>&1
rm -f $target
}
@@ -134,10 +134,10 @@ ${MKFS_XFS_PROG} -dfile,name=$imgs.source,size=100g \
rmdir $imgs.source_dir 2>/dev/null
mkdir $imgs.source_dir
-mount -t xfs -o loop $imgs.source $imgs.source_dir
+_mount -t xfs -o loop $imgs.source $imgs.source_dir
loop2=`mount | grep $imgs.source | grep -o -e 'loop=.*[^),]' | grep -o -e '/.*$'`
cp -a $here $imgs.source_dir
-mount -t xfs -o remount,ro $imgs.source $imgs.source_dir
+_mount -t xfs -o remount,ro $imgs.source $imgs.source_dir
$XFS_COPY_PROG $imgs.source $imgs.image | _filter_copy '#' $imgs.image '#' '#'
_verify_copy $imgs.image $imgs.source $imgs.source_dir
diff --git a/tests/xfs/074 b/tests/xfs/074
index 278f0ade6..6a03c8111 100755
--- a/tests/xfs/074
+++ b/tests/xfs/074
@@ -72,7 +72,7 @@ $XFS_IO_PROG -ft \
-c "falloc 1023m 2g" \
$LOOP_MNT/foo >> $seqres.full
-umount $LOOP_MNT
+_unmount $LOOP_MNT
_check_xfs_filesystem $LOOP_DEV none none
# success, all done
diff --git a/tests/xfs/078 b/tests/xfs/078
index 834c99a00..6b325e05f 100755
--- a/tests/xfs/078
+++ b/tests/xfs/078
@@ -16,7 +16,7 @@ _cleanup()
{
cd /
rm -f $tmp.*
- $UMOUNT_PROG $LOOP_MNT 2>/dev/null
+ _unmount $LOOP_MNT 2>/dev/null
[ -n "$LOOP_DEV" ] && _destroy_loop_device $LOOP_DEV 2>/dev/null
# try to keep the image file if test fails
[ $status -eq 0 ] && rm -f $LOOP_IMG
@@ -75,13 +75,13 @@ _grow_loop()
$XFS_IO_PROG -c "pwrite $new_size $bsize" $LOOP_IMG | _filter_io
LOOP_DEV=`_create_loop_device $LOOP_IMG`
echo "*** mount loop filesystem"
- $MOUNT_PROG -t xfs $LOOP_DEV $LOOP_MNT
+ _mount -t xfs $LOOP_DEV $LOOP_MNT
echo "*** grow loop filesystem"
$XFS_GROWFS_PROG $LOOP_MNT 2>&1 | _filter_growfs 2>&1
echo "*** unmount"
- $UMOUNT_PROG -d $LOOP_MNT && LOOP_DEV=
+ _unmount $LOOP_MNT
# Large grows takes forever to check..
if [ "$check" -gt "0" ]
diff --git a/tests/xfs/148 b/tests/xfs/148
index 9e6798f99..c42c9b119 100755
--- a/tests/xfs/148
+++ b/tests/xfs/148
@@ -14,7 +14,7 @@ _begin_fstest auto quick fuzzers
_cleanup()
{
cd /
- $UMOUNT_PROG $mntpt > /dev/null 2>&1
+ _unmount $mntpt > /dev/null 2>&1
_destroy_loop_device $loopdev > /dev/null 2>&1
rm -r -f $tmp.*
}
@@ -90,7 +90,7 @@ cat $tmp.log >> $seqres.full
cat $tmp.log | _filter_test_dir
# Corrupt the entries
-$UMOUNT_PROG $mntpt
+_unmount $mntpt
_destroy_loop_device $loopdev
cp $imgfile $imgfile.old
sed -b \
@@ -121,7 +121,7 @@ fi
echo "does repair complain?" >> $seqres.full
# Does repair complain about this?
-$UMOUNT_PROG $mntpt
+_unmount $mntpt
$XFS_REPAIR_PROG -n $loopdev >> $seqres.full 2>&1
res=$?
test $res -eq 1 || \
diff --git a/tests/xfs/149 b/tests/xfs/149
index f1b2405e7..f2187109b 100755
--- a/tests/xfs/149
+++ b/tests/xfs/149
@@ -22,7 +22,7 @@ loop_symlink=$TEST_DIR/loop_symlink.$$
# Override the default cleanup function.
_cleanup()
{
- $UMOUNT_PROG $mntdir
+ _unmount $mntdir
[ -n "$loop_dev" ] && _destroy_loop_device $loop_dev
rmdir $mntdir
rm -f $loop_symlink
@@ -73,7 +73,7 @@ echo "=== xfs_growfs - check device symlink ==="
$XFS_GROWFS_PROG -D 12288 $loop_symlink > /dev/null
echo "=== unmount ==="
-$UMOUNT_PROG $mntdir || _fail "!!! failed to unmount"
+_unmount $mntdir || _fail "!!! failed to unmount"
echo "=== mount device symlink ==="
$MOUNT_PROG $loop_symlink $mntdir || _fail "!!! failed to loopback mount"
diff --git a/tests/xfs/186 b/tests/xfs/186
index 88f02585e..6f82e0cda 100755
--- a/tests/xfs/186
+++ b/tests/xfs/186
@@ -87,7 +87,7 @@ _do_eas()
_create_eas $2 $3
fi
echo ""
- cd /; $UMOUNT_PROG $SCRATCH_MNT
+ cd /; _unmount $SCRATCH_MNT
_print_inode
}
@@ -99,7 +99,7 @@ _do_dirents()
echo ""
_scratch_mount
_create_dirents $1 $2
- cd /; $UMOUNT_PROG $SCRATCH_MNT
+ cd /; _unmount $SCRATCH_MNT
_print_inode
}
diff --git a/tests/xfs/216 b/tests/xfs/216
index 680239b4e..6b8b2eb22 100755
--- a/tests/xfs/216
+++ b/tests/xfs/216
@@ -12,6 +12,12 @@ _begin_fstest log metadata auto quick
# Import common functions.
. ./common/filter
+_cleanup()
+{
+ _unmount $LOOP_MNT > /dev/null 2>&1
+ cd /
+ rm -f $tmp.*
+}
_require_scratch
_scratch_mkfs_xfs >/dev/null 2>&1
@@ -50,9 +56,9 @@ _do_mkfs()
echo -n "fssize=${i}g "
$MKFS_XFS_PROG -f -b size=4096 -l version=2 \
-d name=$LOOP_DEV,size=${i}g $loop_mkfs_opts |grep log
- mount -o loop -t xfs $LOOP_DEV $LOOP_MNT
+ _mount -o loop -t xfs $LOOP_DEV $LOOP_MNT
echo "test write" > $LOOP_MNT/test
- umount $LOOP_MNT > /dev/null 2>&1
+ _unmount $LOOP_MNT > /dev/null 2>&1
done
}
# make large holey file
diff --git a/tests/xfs/217 b/tests/xfs/217
index 41caaf738..b2eb34490 100755
--- a/tests/xfs/217
+++ b/tests/xfs/217
@@ -29,9 +29,9 @@ _do_mkfs()
echo -n "fssize=${i}g "
$MKFS_XFS_PROG -f -b size=4096 -l version=2 \
-d name=$LOOP_DEV,size=${i}g |grep log
- mount -o loop -t xfs $LOOP_DEV $LOOP_MNT
+ _mount -o loop -t xfs $LOOP_DEV $LOOP_MNT
echo "test write" > $LOOP_MNT/test
- umount $LOOP_MNT > /dev/null 2>&1
+ _unmount $LOOP_MNT > /dev/null 2>&1
# punch out the previous blocks so that we keep the amount of
# disk space the test requires down to a minimum.
diff --git a/tests/xfs/250 b/tests/xfs/250
index f8846be6e..4e3473ebc 100755
--- a/tests/xfs/250
+++ b/tests/xfs/250
@@ -13,9 +13,10 @@ _begin_fstest auto quick rw prealloc metadata
_cleanup()
{
cd /
- umount $LOOP_MNT 2>/dev/null
+ _unmount $LOOP_MNT 2>/dev/null
rm -f $LOOP_DEV
rmdir $LOOP_MNT
+ rm -f $tmp.*
}
# Import common functions.
@@ -54,13 +55,13 @@ _test_loop()
| _filter_mkfs 2>/dev/null
echo "*** mount loop filesystem"
- mount -t xfs -o loop $LOOP_DEV $LOOP_MNT
+ _mount -t xfs -o loop $LOOP_DEV $LOOP_MNT
echo "*** preallocate large file"
$XFS_IO_PROG -f -c "resvsp 0 $fsize" $LOOP_MNT/foo | _filter_io
echo "*** unmount loop filesystem"
- umount $LOOP_MNT > /dev/null 2>&1
+ _unmount $LOOP_MNT > /dev/null 2>&1
echo "*** check loop filesystem"
_check_xfs_filesystem $LOOP_DEV none none
diff --git a/tests/xfs/289 b/tests/xfs/289
index cf0f2883c..d234f212d 100755
--- a/tests/xfs/289
+++ b/tests/xfs/289
@@ -13,8 +13,8 @@ _begin_fstest growfs auto quick
# Override the default cleanup function.
_cleanup()
{
- $UMOUNT_PROG $tmpdir
- $UMOUNT_PROG $tmpbind
+ _unmount $tmpdir
+ _unmount $tmpbind
rmdir $tmpdir
rm -f $tmpsymlink
rmdir $tmpbind
diff --git a/tests/xfs/507 b/tests/xfs/507
index 75c183c07..52d9b94b4 100755
--- a/tests/xfs/507
+++ b/tests/xfs/507
@@ -22,7 +22,7 @@ _register_cleanup "_cleanup" BUS
_cleanup()
{
cd /
- test -n "$loop_mount" && $UMOUNT_PROG $loop_mount > /dev/null 2>&1
+ test -n "$loop_mount" && _unmount $loop_mount > /dev/null 2>&1
test -n "$loop_dev" && _destroy_loop_device $loop_dev
rm -rf $tmp.*
}
diff --git a/tests/xfs/513 b/tests/xfs/513
index 5585a9c8e..5895e6e2d 100755
--- a/tests/xfs/513
+++ b/tests/xfs/513
@@ -14,7 +14,7 @@ _cleanup()
{
cd /
rm -f $tmp.*
- $UMOUNT_PROG $LOOP_MNT 2>/dev/null
+ _unmount $LOOP_MNT 2>/dev/null
if [ -n "$LOOP_DEV" ];then
_destroy_loop_device $LOOP_DEV 2>/dev/null
fi
@@ -89,7 +89,7 @@ get_mount_info()
force_unmount()
{
- $UMOUNT_PROG $LOOP_MNT >/dev/null 2>&1
+ _unmount $LOOP_MNT >/dev/null 2>&1
}
# _do_test <mount options> <should be mounted?> [<key string> <key should be found?>]
diff --git a/tests/xfs/544 b/tests/xfs/544
index bd694453d..b7eef51c7 100755
--- a/tests/xfs/544
+++ b/tests/xfs/544
@@ -15,7 +15,7 @@ _cleanup()
_cleanup_dump
cd /
rm -r -f $tmp.*
- $UMOUNT_PROG $TEST_DIR/dest.$seq 2> /dev/null
+ _unmount $TEST_DIR/dest.$seq 2> /dev/null
rmdir $TEST_DIR/src.$seq 2> /dev/null
rmdir $TEST_DIR/dest.$seq 2> /dev/null
}
diff --git a/tests/xfs/606 b/tests/xfs/606
index 02de601d6..f958bddd8 100755
--- a/tests/xfs/606
+++ b/tests/xfs/606
@@ -14,7 +14,7 @@ _begin_fstest auto quick growfs
_cleanup()
{
local dev
- $UMOUNT_PROG $LOOP_MNT 2>/dev/null
+ _unmount $LOOP_MNT 2>/dev/null
dev=$(losetup -j testfile | cut -d: -f1)
losetup -d $dev 2>/dev/null
rm -rf $LOOP_IMG $LOOP_MNT
diff --git a/tests/xfs/613 b/tests/xfs/613
index 1947afec7..6ba3d87bf 100755
--- a/tests/xfs/613
+++ b/tests/xfs/613
@@ -14,7 +14,7 @@ _cleanup()
{
cd /
rm -f $tmp.*
- $UMOUNT_PROG $LOOP_MNT 2>/dev/null
+ _unmount $LOOP_MNT 2>/dev/null
if [ -n "$LOOP_DEV" ];then
_destroy_loop_device $LOOP_DEV 2>/dev/null
fi
@@ -90,7 +90,7 @@ get_mount_info()
force_unmount()
{
- $UMOUNT_PROG $LOOP_MNT >/dev/null 2>&1
+ _unmount $LOOP_MNT >/dev/null 2>&1
}
# _do_test <mount options> <should be mounted?> [<key string> <key should be found?>]
--
2.45.2
next prev parent reply other threads:[~2024-11-27 4:54 UTC|newest]
Thread overview: 65+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-11-27 4:51 [RFC PATCH 00/40] fstests: concurrent test execution Dave Chinner
2024-11-27 4:51 ` [PATCH 01/40] xfs/448: get rid of assert-on-failure Dave Chinner
2024-11-27 4:51 ` [PATCH 02/40] fstests: cleanup fsstress process management Dave Chinner
2024-11-29 4:03 ` Zorro Lang
2024-12-04 17:57 ` Zorro Lang
2024-12-05 4:42 ` Dave Chinner
2024-12-05 9:57 ` Zorro Lang
2024-12-04 18:04 ` Zorro Lang
2024-12-05 4:55 ` Dave Chinner
2024-12-05 10:05 ` Zorro Lang
2024-11-27 4:51 ` [PATCH 03/40] fuzzy: don't use killall Dave Chinner
2024-11-27 4:51 ` [PATCH 04/40] fstests: per-test dmflakey instances Dave Chinner
2024-11-27 4:51 ` [PATCH 05/40] fstests: per-test dmerror instances Dave Chinner
2024-11-27 4:51 ` [PATCH 06/40] fstests: per-test dmhuge instances Dave Chinner
2024-11-27 4:51 ` [PATCH 07/40] fstests: per-test dmthin instances Dave Chinner
2024-11-27 4:51 ` [PATCH 08/40] fstests: per-test dmdust instances Dave Chinner
2024-11-27 4:51 ` [PATCH 09/40] fstests: per-test dmdelay instances Dave Chinner
2024-11-27 4:51 ` [PATCH 10/40] fstests: fix DM device creation/removal vs udev races Dave Chinner
2024-11-27 4:51 ` [PATCH 11/40] fstests: use syncfs rather than sync Dave Chinner
2024-11-27 4:51 ` Dave Chinner [this message]
2024-11-27 4:51 ` [PATCH 13/40] fstests: clean up loop device instantiation Dave Chinner
2024-12-01 12:31 ` Zorro Lang
2024-12-01 12:50 ` Zorro Lang
2024-12-07 12:44 ` Zorro Lang
2024-12-07 18:59 ` Zorro Lang
2024-12-07 19:51 ` Zorro Lang
2024-11-27 4:51 ` [PATCH 14/40] fstests: xfs/227 is really slow Dave Chinner
2024-11-27 4:51 ` [PATCH 15/40] fstests: mark tests that are unreliable when run in parallel Dave Chinner
2024-11-27 4:51 ` [PATCH 16/40] fstests: use udevadm wait in preference to settle Dave Chinner
2024-11-29 17:10 ` Darrick J. Wong
2024-11-29 22:33 ` Dave Chinner
2024-11-30 2:34 ` Zorro Lang
2024-11-27 4:51 ` [PATCH 17/40] xfs/442: rescale load so it's not exponential Dave Chinner
2024-11-27 4:51 ` [PATCH 18/40] xfs/176: fix broken setup code Dave Chinner
2024-11-27 4:51 ` [PATCH 19/40] xfs/177: remove unused slab object count location checks Dave Chinner
2024-11-27 4:51 ` [PATCH 20/40] fstests: remove uses of killall where possible Dave Chinner
2024-11-27 4:51 ` [PATCH 21/40] generic/127: reduce runtime Dave Chinner
2024-11-27 4:51 ` [PATCH 22/40] quota: system project quota files need to be shared Dave Chinner
2024-11-27 4:51 ` [PATCH 23/40] dmesg: reduce noise from other tests Dave Chinner
2024-11-27 4:51 ` [PATCH 24/40] fstests: stop using /tmp directly Dave Chinner
2024-11-27 4:51 ` [PATCH 25/40] fstests: scale some tests for high CPU count sanity Dave Chinner
2024-11-29 3:34 ` Zorro Lang
2024-11-27 4:51 ` [PATCH 26/40] generic/310: cleanup killing background processes Dave Chinner
2024-11-27 4:51 ` [PATCH 27/40] filter: handle mount errors from CONFIG_BLK_DEV_WRITE_MOUNTED=y Dave Chinner
2024-11-27 4:51 ` [PATCH 28/40] filters: add a filter that accepts EIO instead of other errors Dave Chinner
2024-11-27 4:51 ` [PATCH 29/40] generic/085: general cleanup for reliability and debugging Dave Chinner
2024-11-27 4:52 ` [PATCH 30/40] fstests: don't use directory stacks Dave Chinner
2024-12-01 12:10 ` Zorro Lang
2024-12-01 21:37 ` Dave Chinner
2024-11-27 4:52 ` [PATCH 31/40] fstests: clean up a couple of dm-flakey tests Dave Chinner
2024-11-27 4:52 ` [PATCH 32/40] fstests: clean up termination of various tests Dave Chinner
2024-11-27 4:52 ` [PATCH 33/40] vfstests: some tests require the testdir to be shared Dave Chinner
2024-11-27 4:52 ` [PATCH 34/40] xfs/629: single extent files should be within tolerance Dave Chinner
2024-11-27 4:52 ` [PATCH 35/40] xfs/076: fix broken mkfs filtering Dave Chinner
2024-11-27 4:52 ` [PATCH 36/40] fstests: capture some failures to seqres.full Dave Chinner
2024-11-27 4:52 ` [PATCH 37/40] fstests: always use fail-at-unmount semantics for XFS Dave Chinner
2024-11-27 4:52 ` [PATCH 38/40] generic/062: don't leave debug files in $here on failure Dave Chinner
2024-11-27 4:52 ` [PATCH 39/40] fstests: quota grace periods unreliable under load Dave Chinner
2024-11-27 4:52 ` [PATCH 40/40] fstests: check-parallel Dave Chinner
2024-11-29 4:22 ` [RFC PATCH 00/40] fstests: concurrent test execution Zorro Lang
2024-12-07 0:09 ` Darrick J. Wong
2024-12-07 9:38 ` Zorro Lang
2024-12-08 0:02 ` Dave Chinner
2024-12-08 6:15 ` Zorro Lang
2024-12-10 0:55 ` Dave Chinner
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20241127045403.3665299-13-david@fromorbit.com \
--to=david@fromorbit.com \
--cc=fstests@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.