Re: [PATCH] fstests: finish UMOUNT_PROG to _unmount conversion

[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]



On Tue, Feb 25, 2025 at 10:19 PM Dave Chinner <david@xxxxxxxxxxxxx> wrote:
>
> On Thu, Feb 20, 2025 at 08:18:19PM -0800, Darrick J. Wong wrote:
> > On Thu, Feb 20, 2025 at 06:22:57PM +0000, Filipe Manana wrote:
> > > On Thu, Feb 20, 2025 at 5:03 PM Darrick J. Wong <djwong@xxxxxxxxxx> wrote:
> > > >
> > > > On Thu, Feb 20, 2025 at 01:27:32PM +0800, Anand Jain wrote:
> > > > > On 20/2/25 02:19, fdmanana@xxxxxxxxxx wrote:
> > > > > > From: Filipe Manana <fdmanana@xxxxxxxx>
> > > > > >
> > > > > > If the test fails or is interrupted after mounting $scratch_dev3 inside
> > > > > > the test filesystem and before unmounting at test_add_device(), we leave
> > > > > > without being unable to unmount the test filesystem since it has a mount
> > > > > > inside it. This results in the need to manually unmount $scratch_dev3,
> > > > > > otherwise a subsequent run of fstests fails since the unmount of the
> > > > > > test device fails with -EBUSY.
> > > > > >
> > > > > > Fix this by unmounting $scratch_dev3 ($seq_mnt) in the _cleanup()
> > > > > > function.
> > > > > >
> > > > > > Signed-off-by: Filipe Manana <fdmanana@xxxxxxxx>
> > > > > > ---
> > > > > >   tests/btrfs/254 | 1 +
> > > > > >   1 file changed, 1 insertion(+)
> > > > > >
> > > > > > diff --git a/tests/btrfs/254 b/tests/btrfs/254
> > > > > > index d9c9eea9..6523389b 100755
> > > > > > --- a/tests/btrfs/254
> > > > > > +++ b/tests/btrfs/254
> > > > > > @@ -21,6 +21,7 @@ _cleanup()
> > > > > >   {
> > > > > >     cd /
> > > > > >     rm -f $tmp.*
> > > > > > +   $UMOUNT_PROG $seq_mnt > /dev/null 2>&1
> > > >
> > > > This should use the _unmount helper that's in for-next.
> > >
> > > Sure, it does the same, except that it redirects stdout and stderr to
> > > $seqres.full.
> > >
> > > Some tests are still calling  $UMOUNT_PROG directly. And that's often
> > > what we want, so that if umount fails we get a mismatch with the
> > > golden output instead of ignoring the failure.
> > > But in this case it's fine.
> >
> > <groan> You're right, I'd repressed that Chinner decided to introduce
> > _unmount so that he could improve logging of unmount failures but then
> > he only bothered converting tests/{generic,xfs} because he didn't give
> > a damn about anyone else.
>
> That's uncalled for, Darrick.
>
> You know very well that I posted an incomplete RFC that I was asking
> for reveiw on, not for it to be merged. The maintainer decided to
> merge it and did not wait for me to finish the conversions.
>
> > Now fstests is stuck with a half finished conversion and no clarity
> > about whether the rest of the $UMOUNT_PROG invocations should be
> > converted to _umount or if those are somehow intentional.
> >
> > Hey Zorro, do you have any opinion on this?  Should someone just finish
> > the $UMOUNT_PROG -> _unmount conversion next week?
>
> Why put it off? With the logging fixes to _unmount() that are
> already merged, it's a purely mechanical change using sed. Patch
> below.
>
> -Dave.
>
> --
> Dave Chinner
> david@xxxxxxxxxxxxx
>
> fstests: finish UMOUNT_PROG to _unmount conversion
>
> From: Dave Chinner <dchinner@xxxxxxxxxx>
>
> Because only tests/generic and tests/xfs have been converted so far
> and the conversion needs finishing. _unmount is a drop-in
> replacement for $UMOUNT_PROG, so we can simply do a mechanical
> conversion like so:
>
> $ sed -i s/\$UMOUNT_PROG/_unmount/g tests/*/*
>
> Signed-off-by: Dave Chinner <dchinner@xxxxxxxxxx>
> ---
>  tests/btrfs/020   |  2 +-
>  tests/btrfs/029   |  2 +-
>  tests/btrfs/031   |  2 +-
>  tests/btrfs/060   |  2 +-
>  tests/btrfs/065   |  2 +-
>  tests/btrfs/066   |  2 +-
>  tests/btrfs/067   |  2 +-
>  tests/btrfs/068   |  2 +-
>  tests/btrfs/075   |  2 +-
>  tests/btrfs/089   |  2 +-
>  tests/btrfs/124   |  2 +-
>  tests/btrfs/125   |  2 +-
>  tests/btrfs/185   |  4 ++--
>  tests/btrfs/197   |  4 ++--
>  tests/btrfs/219   | 12 ++++++------
>  tests/btrfs/254   |  2 +-
>  tests/btrfs/311   |  2 +-
>  tests/btrfs/313   |  2 +-
>  tests/btrfs/314   |  2 +-
>  tests/btrfs/315   |  2 +-
>  tests/btrfs/318   |  6 +++---
>  tests/btrfs/326   | 10 +++++-----
>  tests/btrfs/330   |  4 ++--
>  tests/ext4/032    |  4 ++--
>  tests/ext4/052    |  4 ++--
>  tests/ext4/053    | 32 ++++++++++++++++----------------
>  tests/ext4/056    |  2 +-
>  tests/overlay/003 |  2 +-
>  tests/overlay/004 |  2 +-
>  tests/overlay/005 |  6 +++---
>  tests/overlay/014 |  4 ++--
>  tests/overlay/022 |  2 +-
>  tests/overlay/025 |  4 ++--
>  tests/overlay/029 |  6 +++---
>  tests/overlay/031 |  8 ++++----
>  tests/overlay/035 |  2 +-
>  tests/overlay/036 |  8 ++++----
>  tests/overlay/037 |  6 +++---
>  tests/overlay/040 |  2 +-
>  tests/overlay/041 |  2 +-
>  tests/overlay/042 |  2 +-
>  tests/overlay/043 |  2 +-
>  tests/overlay/044 |  2 +-
>  tests/overlay/048 |  4 ++--
>  tests/overlay/049 |  2 +-
>  tests/overlay/050 |  2 +-
>  tests/overlay/051 |  4 ++--
>  tests/overlay/052 |  2 +-
>  tests/overlay/053 |  4 ++--
>  tests/overlay/054 |  2 +-
>  tests/overlay/055 |  4 ++--
>  tests/overlay/056 |  2 +-
>  tests/overlay/057 |  4 ++--
>  tests/overlay/059 |  2 +-
>  tests/overlay/060 |  2 +-
>  tests/overlay/062 |  2 +-
>  tests/overlay/063 |  2 +-
>  tests/overlay/065 | 22 +++++++++++-----------
>  tests/overlay/067 |  2 +-
>  tests/overlay/068 |  4 ++--
>  tests/overlay/069 |  6 +++---
>  tests/overlay/070 |  6 +++---
>  tests/overlay/071 |  6 +++---
>  tests/overlay/076 |  2 +-
>  tests/overlay/077 |  2 +-
>  tests/overlay/078 |  2 +-
>  tests/overlay/079 |  2 +-
>  tests/overlay/080 |  2 +-
>  tests/overlay/081 | 14 +++++++-------
>  tests/overlay/083 |  2 +-
>  tests/overlay/084 | 10 +++++-----
>  tests/overlay/085 |  2 +-
>  tests/overlay/086 |  8 ++++----
>  73 files changed, 153 insertions(+), 153 deletions(-)
>
> diff --git a/tests/btrfs/020 b/tests/btrfs/020
> index 7e5c6fd7b..badb76f75 100755
> --- a/tests/btrfs/020
> +++ b/tests/btrfs/020
> @@ -17,7 +17,7 @@ _cleanup()
>  {
>         cd /
>         rm -f $tmp.*
> -       $UMOUNT_PROG $loop_mnt
> +       _unmount $loop_mnt
>         _destroy_loop_device $loop_dev1
>         losetup -d $loop_dev2 >/dev/null 2>&1
>         _destroy_loop_device $loop_dev3
> diff --git a/tests/btrfs/029 b/tests/btrfs/029
> index c37ad63fb..1f8201af3 100755
> --- a/tests/btrfs/029
> +++ b/tests/btrfs/029
> @@ -74,7 +74,7 @@ cp --reflink=always $orig_file $copy_file >> $seqres.full 2>&1 || echo "cp refli
>  md5sum $orig_file | _filter_testdir_and_scratch
>  md5sum $copy_file | _filter_testdir_and_scratch
>
> -$UMOUNT_PROG $reflink_test_dir
> +_unmount $reflink_test_dir

This isn't equivalent to directly calling UMOUNT_PROG since the
_unmount helper always redirects stdout and stderr to $seqres.full.
Meaning failures may often be ignored or not immediately obvious as before.

This applies to many other places, just picking the first to comment.

>
>  # success, all done
>  status=0
> diff --git a/tests/btrfs/031 b/tests/btrfs/031
> index 8ac73d3a8..12ad84c64 100755
> --- a/tests/btrfs/031
> +++ b/tests/btrfs/031
> @@ -99,7 +99,7 @@ mv $testdir2/file* $subvol2/
>  echo "Verify the file contents:"
>  _checksum_files
>
> -$UMOUNT_PROG $cross_mount_test_dir
> +_unmount $cross_mount_test_dir
>
>  # success, all done
>  status=0
> diff --git a/tests/btrfs/060 b/tests/btrfs/060
> index 21f15ec89..fff9bed81 100755
> --- a/tests/btrfs/060
> +++ b/tests/btrfs/060
> @@ -76,7 +76,7 @@ run_test()
>         fi
>
>         # in case the subvolume is still mounted
> -       $UMOUNT_PROG $subvol_mnt >/dev/null 2>&1
> +       _unmount $subvol_mnt >/dev/null 2>&1

And here there's no point of having the redirections, since the helper
always redirects stdout/stderr to $seqres.full.
So it could be removed to make things more readable.

This also applies to many other places, just picking the first to comment.

Thanks.

>         _scratch_unmount
>         # we called _require_scratch_nocheck instead of _require_scratch
>         # do check after test for each profile config
> diff --git a/tests/btrfs/065 b/tests/btrfs/065
> index f0c9ffb04..77ec89038 100755
> --- a/tests/btrfs/065
> +++ b/tests/btrfs/065
> @@ -84,7 +84,7 @@ run_test()
>         fi
>
>         # in case the subvolume is still mounted
> -       $UMOUNT_PROG $subvol_mnt >/dev/null 2>&1
> +       _unmount $subvol_mnt >/dev/null 2>&1
>         _scratch_unmount
>         # we called _require_scratch_nocheck instead of _require_scratch
>         # do check after test for each profile config
> diff --git a/tests/btrfs/066 b/tests/btrfs/066
> index e3a083b94..07ed799a5 100755
> --- a/tests/btrfs/066
> +++ b/tests/btrfs/066
> @@ -76,7 +76,7 @@ run_test()
>         fi
>
>         # in case the subvolume is still mounted
> -       $UMOUNT_PROG $subvol_mnt >/dev/null 2>&1
> +       _unmount $subvol_mnt >/dev/null 2>&1
>         _scratch_unmount
>         # we called _require_scratch_nocheck instead of _require_scratch
>         # do check after test for each profile config
> diff --git a/tests/btrfs/067 b/tests/btrfs/067
> index 768993116..17c772d04 100755
> --- a/tests/btrfs/067
> +++ b/tests/btrfs/067
> @@ -77,7 +77,7 @@ run_test()
>         fi
>
>         # in case the subvolume is still mounted
> -       $UMOUNT_PROG $subvol_mnt >/dev/null 2>&1
> +       _unmount $subvol_mnt >/dev/null 2>&1
>         _scratch_unmount
>         # we called _require_scratch_nocheck instead of _require_scratch
>         # do check after test for each profile config
> diff --git a/tests/btrfs/068 b/tests/btrfs/068
> index 3d221259f..37b6b6ba8 100755
> --- a/tests/btrfs/068
> +++ b/tests/btrfs/068
> @@ -77,7 +77,7 @@ run_test()
>         fi
>
>         # in case the subvolume is still mounted
> -       $UMOUNT_PROG $subvol_mnt >/dev/null 2>&1
> +       _unmount $subvol_mnt >/dev/null 2>&1
>         _scratch_unmount
>         # we called _require_scratch_nocheck instead of _require_scratch
>         # do check after test for each profile config
> diff --git a/tests/btrfs/075 b/tests/btrfs/075
> index 917993ca2..328dc5f68 100755
> --- a/tests/btrfs/075
> +++ b/tests/btrfs/075
> @@ -15,7 +15,7 @@ _cleanup()
>  {
>         cd /
>         rm -f $tmp.*
> -       $UMOUNT_PROG $subvol_mnt >/dev/null 2>&1
> +       _unmount $subvol_mnt >/dev/null 2>&1
>  }
>
>  . ./common/filter
> diff --git a/tests/btrfs/089 b/tests/btrfs/089
> index 8f8e37b6f..8c06535d9 100755
> --- a/tests/btrfs/089
> +++ b/tests/btrfs/089
> @@ -35,7 +35,7 @@ mount --bind "$SCRATCH_MNT/testvol/testdir" "$SCRATCH_MNT/testvol/mnt"
>  $BTRFS_UTIL_PROG subvolume delete "$SCRATCH_MNT/testvol" >>$seqres.full 2>&1
>
>  # Unmount the bind mount, which should still be alive.
> -$UMOUNT_PROG "$SCRATCH_MNT/testvol/mnt"
> +_unmount "$SCRATCH_MNT/testvol/mnt"
>
>  echo "Silence is golden"
>  status=0
> diff --git a/tests/btrfs/124 b/tests/btrfs/124
> index af079c286..7c33a8fab 100755
> --- a/tests/btrfs/124
> +++ b/tests/btrfs/124
> @@ -132,7 +132,7 @@ if [ "$checkpoint1" != "$checkpoint3" ]; then
>         echo "Inital sum does not match with data on dev2 written by balance"
>  fi
>
> -$UMOUNT_PROG $dev2
> +_unmount $dev2
>  _scratch_dev_pool_put
>  _btrfs_rescan_devices
>  _test_mount
> diff --git a/tests/btrfs/125 b/tests/btrfs/125
> index c8c0dd422..790f35d55 100755
> --- a/tests/btrfs/125
> +++ b/tests/btrfs/125
> @@ -144,7 +144,7 @@ if [ "$checkpoint1" != "$checkpoint3" ]; then
>         echo "Inital sum does not match with data on dev2 written by balance"
>  fi
>
> -$UMOUNT_PROG $dev2
> +_unmount $dev2
>  _scratch_dev_pool_put
>  _btrfs_rescan_devices
>  _test_mount
> diff --git a/tests/btrfs/185 b/tests/btrfs/185
> index 8d0643450..f52608852 100755
> --- a/tests/btrfs/185
> +++ b/tests/btrfs/185
> @@ -15,7 +15,7 @@ mnt=$TEST_DIR/$seq.mnt
>  # Override the default cleanup function.
>  _cleanup()
>  {
> -       $UMOUNT_PROG $mnt > /dev/null 2>&1
> +       _unmount $mnt > /dev/null 2>&1
>         rm -rf $mnt > /dev/null 2>&1
>         cd /
>         rm -f $tmp.*
> @@ -62,7 +62,7 @@ $BTRFS_UTIL_PROG device scan $device_1 >> $seqres.full 2>&1
>         _fail "if it fails here, then it means subvolume mount at boot may fail "\
>               "in some configs."
>
> -$UMOUNT_PROG $mnt > /dev/null 2>&1
> +_unmount $mnt > /dev/null 2>&1
>  _scratch_dev_pool_put
>
>  # success, all done
> diff --git a/tests/btrfs/197 b/tests/btrfs/197
> index 9f1d879a4..111589913 100755
> --- a/tests/btrfs/197
> +++ b/tests/btrfs/197
> @@ -15,7 +15,7 @@ _begin_fstest auto quick volume
>  # Override the default cleanup function.
>  _cleanup()
>  {
> -       $UMOUNT_PROG $TEST_DIR/$seq.mnt >/dev/null 2>&1
> +       _unmount $TEST_DIR/$seq.mnt >/dev/null 2>&1
>         rm -rf $TEST_DIR/$seq.mnt
>         cd /
>         rm -f $tmp.*
> @@ -67,7 +67,7 @@ workout()
>         grep -q "${SCRATCH_DEV_NAME[1]}" $tmp.output && _fail "found stale device"
>
>         $BTRFS_UTIL_PROG device remove "${SCRATCH_DEV_NAME[1]}" "$TEST_DIR/$seq.mnt"
> -       $UMOUNT_PROG $TEST_DIR/$seq.mnt
> +       _unmount $TEST_DIR/$seq.mnt
>         _scratch_unmount
>         _spare_dev_put
>         _scratch_dev_pool_put
> diff --git a/tests/btrfs/219 b/tests/btrfs/219
> index 052f61a39..58384957e 100755
> --- a/tests/btrfs/219
> +++ b/tests/btrfs/219
> @@ -21,8 +21,8 @@ _cleanup()
>         rm -f $tmp.*
>
>         # The variables are set before the test case can fail.
> -       $UMOUNT_PROG ${loop_mnt1} &> /dev/null
> -       $UMOUNT_PROG ${loop_mnt2} &> /dev/null
> +       _unmount ${loop_mnt1} &> /dev/null
> +       _unmount ${loop_mnt2} &> /dev/null
>         rm -rf $loop_mnt1
>         rm -rf $loop_mnt2
>
> @@ -66,7 +66,7 @@ loop_dev2=`_create_loop_device $fs_img2`
>  # Normal single device case, should pass just fine
>  _mount $loop_dev1 $loop_mnt1 > /dev/null  2>&1 || \
>         _fail "Couldn't do initial mount"
> -$UMOUNT_PROG $loop_mnt1
> +_unmount $loop_mnt1
>
>  _btrfs_forget_or_module_reload
>
> @@ -75,15 +75,15 @@ _btrfs_forget_or_module_reload
>  # measure.
>  _mount $loop_dev1 $loop_mnt1 > /dev/null 2>&1 || \
>         _fail "Failed to mount the second time"
> -$UMOUNT_PROG $loop_mnt1
> +_unmount $loop_mnt1
>
>  _mount $loop_dev2 $loop_mnt2 > /dev/null 2>&1 || \
>         _fail "We couldn't mount the old generation"
> -$UMOUNT_PROG $loop_mnt2
> +_unmount $loop_mnt2
>
>  _mount $loop_dev1 $loop_mnt1 > /dev/null 2>&1 || \
>         _fail "Failed to mount the second time"
> -$UMOUNT_PROG $loop_mnt1
> +_unmount $loop_mnt1
>
>  # Now try mount them at the same time, if kernel does not support
>  # temp-fsid feature then mount will fail.
> diff --git a/tests/btrfs/254 b/tests/btrfs/254
> index d9c9eea9c..548224894 100755
> --- a/tests/btrfs/254
> +++ b/tests/btrfs/254
> @@ -96,7 +96,7 @@ test_add_device()
>         $BTRFS_UTIL_PROG filesystem show -m $SCRATCH_MNT | \
>                                         _filter_btrfs_filesystem_show
>
> -       $UMOUNT_PROG $seq_mnt
> +       _unmount $seq_mnt
>         _scratch_unmount
>         cleanup_dmdev
>  }
> diff --git a/tests/btrfs/311 b/tests/btrfs/311
> index 51147c59f..3161e62db 100755
> --- a/tests/btrfs/311
> +++ b/tests/btrfs/311
> @@ -14,7 +14,7 @@ _begin_fstest auto quick subvol tempfsid
>  _cleanup()
>  {
>         cd /
> -       $UMOUNT_PROG $mnt1 > /dev/null 2>&1
> +       _unmount $mnt1 > /dev/null 2>&1
>         rm -r -f $tmp.*
>         rm -r -f $mnt1
>  }
> diff --git a/tests/btrfs/313 b/tests/btrfs/313
> index 5a9e98dea..bf62af7b2 100755
> --- a/tests/btrfs/313
> +++ b/tests/btrfs/313
> @@ -12,7 +12,7 @@ _begin_fstest auto quick clone tempfsid
>  _cleanup()
>  {
>         cd /
> -       $UMOUNT_PROG $mnt1 > /dev/null 2>&1
> +       _unmount $mnt1 > /dev/null 2>&1
>         rm -r -f $tmp.*
>         rm -r -f $mnt1
>  }
> diff --git a/tests/btrfs/314 b/tests/btrfs/314
> index 76dccc41f..f3e5c504b 100755
> --- a/tests/btrfs/314
> +++ b/tests/btrfs/314
> @@ -13,7 +13,7 @@ _begin_fstest auto quick snapshot send tempfsid
>  _cleanup()
>  {
>         cd /
> -       $UMOUNT_PROG $tempfsid_mnt 2>/dev/null
> +       _unmount $tempfsid_mnt 2>/dev/null
>         rm -r -f $tmp.*
>         rm -r -f $sendfile
>         rm -r -f $tempfsid_mnt
> diff --git a/tests/btrfs/315 b/tests/btrfs/315
> index e6589abec..0ea2e8b35 100755
> --- a/tests/btrfs/315
> +++ b/tests/btrfs/315
> @@ -13,7 +13,7 @@ _begin_fstest auto quick volume seed balance tempfsid
>  _cleanup()
>  {
>         cd /
> -       $UMOUNT_PROG $tempfsid_mnt 2>/dev/null
> +       _unmount $tempfsid_mnt 2>/dev/null
>         rm -r -f $tmp.*
>         rm -r -f $tempfsid_mnt
>  }
> diff --git a/tests/btrfs/318 b/tests/btrfs/318
> index df5a4a072..ad3040d64 100755
> --- a/tests/btrfs/318
> +++ b/tests/btrfs/318
> @@ -22,8 +22,8 @@ _require_loop
>
>  _cleanup() {
>         cd /
> -       $UMOUNT_PROG $MNT
> -       $UMOUNT_PROG $BIND
> +       _unmount $MNT
> +       _unmount $BIND
>         losetup -d $DEV0 $DEV1 $DEV2
>         rm -f $IMG0 $IMG1 $IMG2
>         rm -rf $MNT $BIND
> @@ -58,7 +58,7 @@ $MKFS_BTRFS_PROG -f -msingle -dsingle $D0P1 $DEV2 >>$seqres.full 2>&1 || _fail "
>  rm -rf $MNT
>  mkdir -p $MNT
>  _mount $D0P1 $MNT
> -$UMOUNT_PROG $MNT
> +_unmount $MNT
>
>  # Swap the partition dev_ts. This leaves the dev_t in the cache out of date.
>  $PARTED_PROG $DEV0 'rm 1' --script
> diff --git a/tests/btrfs/326 b/tests/btrfs/326
> index 1fc4db06b..51f769f9a 100755
> --- a/tests/btrfs/326
> +++ b/tests/btrfs/326
> @@ -25,8 +25,8 @@ _cleanup()
>         [ -n "$mount_pid" ] && kill $mount_pid &> /dev/null
>         [ -n "$remount_pid" ] && kill $remount_pid &> /dev/null
>         wait
> -       $UMOUNT_PROG "$subv1_mount" &> /dev/null
> -       $UMOUNT_PROG "$subv2_mount" &> /dev/null
> +       _unmount "$subv1_mount" &> /dev/null
> +       _unmount "$subv2_mount" &> /dev/null
>         rm -rf -- "$subv1_mount" "$subv2_mount"
>  }
>
> @@ -80,7 +80,7 @@ mount_workload()
>         trap "wait; exit" SIGTERM
>         while true; do
>                 _mount "$SCRATCH_DEV" "$subv2_mount"
> -               $UMOUNT_PROG "$subv2_mount"
> +               _unmount "$subv2_mount"
>         done
>  }
>
> @@ -94,12 +94,12 @@ wait
>  unset remount_pid mount_pid
>
>  # Subv1 is always mounted, thus the umount should never fail.
> -$UMOUNT_PROG "$subv1_mount"
> +_unmount "$subv1_mount"
>
>  # Subv2 may have already been unmounted, so here we ignore all output.
>  # This may hide some errors like -EBUSY, but the next rm line would
>  # detect any still mounted subvolume so we're still safe.
> -$UMOUNT_PROG "$subv2_mount" &> /dev/null
> +_unmount "$subv2_mount" &> /dev/null
>
>  # If above unmount, especially subv2 is not properly unmounted,
>  # the rm should fail with some error message
> diff --git a/tests/btrfs/330 b/tests/btrfs/330
> index 92cc498f2..07de58698 100755
> --- a/tests/btrfs/330
> +++ b/tests/btrfs/330
> @@ -48,7 +48,7 @@ echo "making sure bar allows writes"
>  touch $TEST_DIR/$seq/bar/qux
>  ls $TEST_DIR/$seq/bar
>
> -$UMOUNT_PROG $TEST_DIR/$seq/foo
> -$UMOUNT_PROG $TEST_DIR/$seq/bar
> +_unmount $TEST_DIR/$seq/foo
> +_unmount $TEST_DIR/$seq/bar
>
>  status=0 ; exit
> diff --git a/tests/ext4/032 b/tests/ext4/032
> index 690fcf066..e6f8c22ba 100755
> --- a/tests/ext4/032
> +++ b/tests/ext4/032
> @@ -63,7 +63,7 @@ ext4_online_resize()
>         fi
>         cat $tmp.resize2fs >> $seqres.full
>         echo "+++ umount fs" | tee -a $seqres.full
> -       $UMOUNT_PROG ${IMG_MNT}
> +       _unmount ${IMG_MNT}
>
>         echo "+++ check fs" | tee -a $seqres.full
>         _check_generic_filesystem $LOOP_DEVICE >> $seqres.full 2>&1 || \
> @@ -77,7 +77,7 @@ _cleanup()
>         cd /
>         [ -n "$LOOP_DEVICE" ] && _destroy_loop_device $LOOP_DEVICE > /dev/null 2>&1
>         rm -f $tmp.*
> -       $UMOUNT_PROG ${IMG_MNT} > /dev/null 2>&1
> +       _unmount ${IMG_MNT} > /dev/null 2>&1
>         rm -f ${IMG_FILE} > /dev/null 2>&1
>  }
>
> diff --git a/tests/ext4/052 b/tests/ext4/052
> index 0df8a6513..4c02f75cb 100755
> --- a/tests/ext4/052
> +++ b/tests/ext4/052
> @@ -18,7 +18,7 @@ _cleanup()
>         cd /
>         rm -r -f $tmp.*
>         if [ ! -z "$loop_mnt" ]; then
> -               $UMOUNT_PROG $loop_mnt
> +               _unmount $loop_mnt
>                 rm -rf $loop_mnt
>         fi
>         [ ! -z "$fs_img" ] && rm -rf $fs_img
> @@ -64,7 +64,7 @@ then
>      status=1
>  fi
>
> -$UMOUNT_PROG $loop_mnt || _fail "umount failed"
> +_unmount $loop_mnt || _fail "umount failed"
>  loop_mnt=
>
>  $E2FSCK_PROG -fn $fs_img >> $seqres.full 2>&1 || _fail "file system corrupted"
> diff --git a/tests/ext4/053 b/tests/ext4/053
> index 5922ed571..3e2cda099 100755
> --- a/tests/ext4/053
> +++ b/tests/ext4/053
> @@ -20,7 +20,7 @@ trap "_cleanup; exit \$status" 0 1 2 3 15
>  _cleanup()
>  {
>         cd /
> -       $UMOUNT_PROG $SCRATCH_MNT > /dev/null 2>&1
> +       _unmount $SCRATCH_MNT > /dev/null 2>&1
>         if [ -n "$LOOP_LOGDEV" ];then
>                 _destroy_loop_device $LOOP_LOGDEV 2>/dev/null
>         fi
> @@ -236,7 +236,7 @@ not_mnt() {
>         if simple_mount -o $1 $SCRATCH_DEV $SCRATCH_MNT; then
>                 print_log "(mount unexpectedly succeeded)"
>                 fail
> -               $UMOUNT_PROG $SCRATCH_MNT
> +               _unmount $SCRATCH_MNT
>                 return
>         fi
>         ok
> @@ -247,7 +247,7 @@ not_mnt() {
>                 return
>         fi
>         not_remount $1
> -       $UMOUNT_PROG $SCRATCH_MNT
> +       _unmount $SCRATCH_MNT
>  }
>
>  mnt_only() {
> @@ -269,7 +269,7 @@ mnt() {
>         fi
>
>         mnt_only $*
> -       $UMOUNT_PROG $SCRATCH_MNT 2> /dev/null
> +       _unmount $SCRATCH_MNT 2> /dev/null
>
>         [ "$t2fs" -eq 0 ] && return
>
> @@ -288,7 +288,7 @@ mnt() {
>                                     -e 's/data=writeback/journal_data_writeback/')
>         $TUNE2FS_PROG -o $op_set $SCRATCH_DEV > /dev/null 2>&1
>         mnt_only "defaults" $check
> -       $UMOUNT_PROG $SCRATCH_MNT 2> /dev/null
> +       _unmount $SCRATCH_MNT 2> /dev/null
>         if [ "$op_set" = ^* ]; then
>                 op_set=${op_set#^}
>         else
> @@ -308,12 +308,12 @@ remount() {
>         do_mnt remount,$2 $3
>         if [ $? -ne 0 ]; then
>                 fail
> -               $UMOUNT_PROG $SCRATCH_MNT 2> /dev/null
> +               _unmount $SCRATCH_MNT 2> /dev/null
>                 return
>         else
>                 ok
>         fi
> -       $UMOUNT_PROG $SCRATCH_MNT 2> /dev/null
> +       _unmount $SCRATCH_MNT 2> /dev/null
>
>         # Now just specify mnt
>         print_log "mounting $fstype \"$1\" "
> @@ -327,7 +327,7 @@ remount() {
>                 ok
>         fi
>
> -       $UMOUNT_PROG $SCRATCH_MNT 2> /dev/null
> +       _unmount $SCRATCH_MNT 2> /dev/null
>  }
>
>  # Test that the filesystem cannot be remounted with option(s) $1 (meaning that
> @@ -363,7 +363,7 @@ mnt_then_not_remount() {
>                 return
>         fi
>         not_remount $2
> -       $UMOUNT_PROG $SCRATCH_MNT
> +       _unmount $SCRATCH_MNT
>  }
>
>
> @@ -399,8 +399,8 @@ LOGDEV_DEVNUM=`echo "${majmin%:*}*2^8 + ${majmin#*:}" | bc`
>  fstype=
>  for fstype in ext2 ext3 ext4; do
>
> -       $UMOUNT_PROG $SCRATCH_MNT 2> /dev/null
> -       $UMOUNT_PROG $SCRATCH_DEV 2> /dev/null
> +       _unmount $SCRATCH_MNT 2> /dev/null
> +       _unmount $SCRATCH_DEV 2> /dev/null
>
>         do_mkfs $SCRATCH_DEV ${SIZE}k
>
> @@ -417,7 +417,7 @@ for fstype in ext2 ext3 ext4; do
>                 continue
>         fi
>
> -       $UMOUNT_PROG $SCRATCH_MNT 2> /dev/null
> +       _unmount $SCRATCH_MNT 2> /dev/null
>
>         not_mnt failme
>         mnt
> @@ -551,7 +551,7 @@ for fstype in ext2 ext3 ext4; do
>         # dax mount options
>         simple_mount -o dax=always $SCRATCH_DEV $SCRATCH_MNT > /dev/null 2>&1
>         if [ $? -eq 0 ]; then
> -               $UMOUNT_PROG $SCRATCH_MNT 2> /dev/null
> +               _unmount $SCRATCH_MNT 2> /dev/null
>                 mnt dax
>                 mnt dax=always
>                 mnt dax=never
> @@ -632,7 +632,7 @@ for fstype in ext2 ext3 ext4; do
>         not_remount jqfmt=vfsv1
>         not_remount noquota
>         mnt_only remount,usrquota,grpquota ^usrquota,^grpquota
> -       $UMOUNT_PROG $SCRATCH_MNT > /dev/null 2>&1
> +       _unmount $SCRATCH_MNT > /dev/null 2>&1
>
>         # test clearing/changing quota when enabled
>         do_mkfs -E quotatype=^prjquota $SCRATCH_DEV ${SIZE}k
> @@ -653,7 +653,7 @@ for fstype in ext2 ext3 ext4; do
>         mnt_only remount,usrquota,grpquota usrquota,grpquota
>         quotaoff -f $SCRATCH_MNT >> $seqres.full 2>&1
>         mnt_only remount,noquota ^usrquota,^grpquota,quota
> -       $UMOUNT_PROG $SCRATCH_MNT > /dev/null 2>&1
> +       _unmount $SCRATCH_MNT > /dev/null 2>&1
>
>         # Quota feature
>         echo "== Testing quota feature " >> $seqres.full
> @@ -695,7 +695,7 @@ for fstype in ext2 ext3 ext4; do
>
>  done #for fstype in ext2 ext3 ext4; do
>
> -$UMOUNT_PROG $SCRATCH_MNT > /dev/null 2>&1
> +_unmount $SCRATCH_MNT > /dev/null 2>&1
>  echo "$ERR errors encountered" >> $seqres.full
>
>  status=$ERR
> diff --git a/tests/ext4/056 b/tests/ext4/056
> index fb5bbe93e..d22aebfa6 100755
> --- a/tests/ext4/056
> +++ b/tests/ext4/056
> @@ -72,7 +72,7 @@ do_resize()
>         # delay
>         sleep 0.2
>         _scratch_unmount >> $seqres.full 2>&1 \
> -               || _fail "$UMOUNT_PROG failed. Exiting"
> +               || _fail "_unmount failed. Exiting"
>  }
>
>  run_test()
> diff --git a/tests/overlay/003 b/tests/overlay/003
> index 41ad99e79..0b5660b8e 100755
> --- a/tests/overlay/003
> +++ b/tests/overlay/003
> @@ -56,7 +56,7 @@ rm -rf ${SCRATCH_MNT}/*
>  ls ${SCRATCH_MNT}/
>
>  # unmount overlayfs but not base fs
> -$UMOUNT_PROG $SCRATCH_MNT
> +_unmount $SCRATCH_MNT
>
>  echo "Silence is golden"
>  # success, all done
> diff --git a/tests/overlay/004 b/tests/overlay/004
> index bea4bb543..e97e9ddd9 100755
> --- a/tests/overlay/004
> +++ b/tests/overlay/004
> @@ -53,7 +53,7 @@ _user_do "chmod u-X ${SCRATCH_MNT}/attr_file2 > /dev/null 2>&1"
>  stat -c %a ${SCRATCH_MNT}/attr_file2
>
>  # unmount overlayfs but not base fs
> -$UMOUNT_PROG $SCRATCH_MNT
> +_unmount $SCRATCH_MNT
>
>  # check mode bits of the file that has been copied up, and
>  # the file that should not have been copied up.
> diff --git a/tests/overlay/005 b/tests/overlay/005
> index 4c11d5e1b..1495999b7 100755
> --- a/tests/overlay/005
> +++ b/tests/overlay/005
> @@ -75,14 +75,14 @@ $XFS_IO_PROG -f -c "o" ${SCRATCH_MNT}/test_file \
>         >>$seqres.full 2>&1
>
>  # unmount overlayfs
> -$UMOUNT_PROG $SCRATCH_MNT
> +_unmount $SCRATCH_MNT
>
>  # check overlayfs
>  _overlay_check_scratch_dirs $lowerd $upperd $workd
>
>  # unmount undelying xfs, this tiggers panic if memleak happens
> -$UMOUNT_PROG ${OVL_BASE_SCRATCH_MNT}/uppermnt
> -$UMOUNT_PROG ${OVL_BASE_SCRATCH_MNT}/lowermnt
> +_unmount ${OVL_BASE_SCRATCH_MNT}/uppermnt
> +_unmount ${OVL_BASE_SCRATCH_MNT}/lowermnt
>
>  # success, all done
>  echo "Silence is golden"
> diff --git a/tests/overlay/014 b/tests/overlay/014
> index f07fc6855..aeb1467a7 100755
> --- a/tests/overlay/014
> +++ b/tests/overlay/014
> @@ -46,7 +46,7 @@ _overlay_scratch_mount_dirs $lowerdir1 $lowerdir2 $workdir2
>  rm -rf $SCRATCH_MNT/testdir
>  mkdir -p $SCRATCH_MNT/testdir/visibledir
>  # unmount overlayfs but not base fs
> -$UMOUNT_PROG $SCRATCH_MNT
> +_unmount $SCRATCH_MNT
>
>  # check overlayfs
>  _overlay_check_scratch_dirs $lowerdir1 $lowerdir2 $workdir2
> @@ -59,7 +59,7 @@ touch $SCRATCH_MNT/testdir/visiblefile
>
>  # umount and mount overlay again, buggy kernel treats the copied-up dir as
>  # opaque, visibledir is not seen in merged dir.
> -$UMOUNT_PROG $SCRATCH_MNT
> +_unmount $SCRATCH_MNT
>  _overlay_scratch_mount_dirs "$lowerdir2:$lowerdir1" $upperdir $workdir
>  ls $SCRATCH_MNT/testdir
>
> diff --git a/tests/overlay/022 b/tests/overlay/022
> index d33bd2978..8b26a2cd0 100755
> --- a/tests/overlay/022
> +++ b/tests/overlay/022
> @@ -17,7 +17,7 @@ _begin_fstest auto quick mount nested
>  _cleanup()
>  {
>         cd /
> -       $UMOUNT_PROG $tmp/mnt > /dev/null 2>&1
> +       _unmount $tmp/mnt > /dev/null 2>&1
>         rm -rf $tmp
>         rm -f $tmp.*
>  }
> diff --git a/tests/overlay/025 b/tests/overlay/025
> index dc819a393..3b6cf987b 100755
> --- a/tests/overlay/025
> +++ b/tests/overlay/025
> @@ -19,8 +19,8 @@ _begin_fstest auto quick attr
>  _cleanup()
>  {
>         cd /
> -       $UMOUNT_PROG $tmpfsdir/mnt
> -       $UMOUNT_PROG $tmpfsdir
> +       _unmount $tmpfsdir/mnt
> +       _unmount $tmpfsdir
>         rm -rf $tmpfsdir
>         rm -f $tmp.*
>  }
> diff --git a/tests/overlay/029 b/tests/overlay/029
> index 4bade9a0e..b0ed7285f 100755
> --- a/tests/overlay/029
> +++ b/tests/overlay/029
> @@ -22,7 +22,7 @@ _begin_fstest auto quick nested
>  _cleanup()
>  {
>         cd /
> -       $UMOUNT_PROG $tmp/mnt
> +       _unmount $tmp/mnt
>         rm -rf $tmp
>         rm -f $tmp.*
>  }
> @@ -56,7 +56,7 @@ _overlay_mount_dirs $SCRATCH_MNT/up $tmp/{upper,work} \
>    overlay $tmp/mnt
>  # accessing file in the second mount
>  cat $tmp/mnt/foo
> -$UMOUNT_PROG $tmp/mnt
> +_unmount $tmp/mnt
>
>  # re-create upper/work to avoid ovl_verify_origin() mount failure
>  # when index is enabled
> @@ -66,7 +66,7 @@ mkdir -p $tmp/{upper,work}
>  _overlay_mount_dirs $SCRATCH_MNT/low $tmp/{upper,work} \
>    overlay $tmp/mnt
>  cat $tmp/mnt/bar
> -$UMOUNT_PROG $tmp/mnt
> +_unmount $tmp/mnt
>
>  rm -rf $tmp/{upper,work}
>  mkdir -p $tmp/{upper,work}
> diff --git a/tests/overlay/031 b/tests/overlay/031
> index dd9dfcdb9..88299ebe2 100755
> --- a/tests/overlay/031
> +++ b/tests/overlay/031
> @@ -28,7 +28,7 @@ create_whiteout()
>
>         rm -f $SCRATCH_MNT/testdir/$file
>
> -       $UMOUNT_PROG $SCRATCH_MNT
> +       _unmount $SCRATCH_MNT
>  }
>
>  # Import common functions.
> @@ -68,7 +68,7 @@ rm -rf $SCRATCH_MNT/testdir 2>&1 | _filter_scratch
>
>  # umount overlay again, create a new file with the same name and
>  # mount overlay again.
> -$UMOUNT_PROG $SCRATCH_MNT
> +_unmount $SCRATCH_MNT
>  touch $lowerdir1/testdir
>
>  _overlay_scratch_mount_dirs $lowerdir1 $upperdir $workdir
> @@ -77,7 +77,7 @@ _overlay_scratch_mount_dirs $lowerdir1 $upperdir $workdir
>  # it will not clean up the dir and lead to residue.
>  rm -rf $SCRATCH_MNT/testdir 2>&1 | _filter_scratch
>
> -$UMOUNT_PROG $SCRATCH_MNT
> +_unmount $SCRATCH_MNT
>
>  # let lower dir have invalid whiteouts, repeat ls and rmdir test again.
>  rm -rf $lowerdir1/testdir
> @@ -92,7 +92,7 @@ _overlay_scratch_mount_dirs "$lowerdir1:$lowerdir2" $upperdir $workdir
>  ls $SCRATCH_MNT/testdir
>  rm -rf $SCRATCH_MNT/testdir 2>&1 | _filter_scratch
>
> -$UMOUNT_PROG $SCRATCH_MNT
> +_unmount $SCRATCH_MNT
>
>  # let lower dir and upper dir both have invalid whiteouts, repeat ls and rmdir again.
>  rm -rf $lowerdir1/testdir
> diff --git a/tests/overlay/035 b/tests/overlay/035
> index 0b3257c4c..14e62ca2e 100755
> --- a/tests/overlay/035
> +++ b/tests/overlay/035
> @@ -43,7 +43,7 @@ mkdir -p $lowerdir1 $lowerdir2 $upperdir $workdir
>  _overlay_scratch_mount_opts -o"lowerdir=$lowerdir2:$lowerdir1"
>  touch $SCRATCH_MNT/foo 2>&1 | _filter_scratch
>  $MOUNT_PROG -o remount,rw $SCRATCH_MNT 2>&1 | _filter_ro_mount
> -$UMOUNT_PROG $SCRATCH_MNT
> +_unmount $SCRATCH_MNT
>
>  # Make workdir immutable to prevent workdir re-create on mount
>  $CHATTR_PROG +i $workdir
> diff --git a/tests/overlay/036 b/tests/overlay/036
> index 19a181bbd..d94a86c49 100755
> --- a/tests/overlay/036
> +++ b/tests/overlay/036
> @@ -34,8 +34,8 @@ _cleanup()
>         cd /
>         rm -f $tmp.*
>         # unmount the two extra mounts in case they did not fail
> -       $UMOUNT_PROG $SCRATCH_MNT 2>/dev/null
> -       $UMOUNT_PROG $SCRATCH_MNT 2>/dev/null
> +       _unmount $SCRATCH_MNT 2>/dev/null
> +       _unmount $SCRATCH_MNT 2>/dev/null
>  }
>
>  # Import common functions.
> @@ -66,13 +66,13 @@ _overlay_mount_dirs $lowerdir $upperdir $workdir \
>  # with index=off - expect success
>  _overlay_mount_dirs $lowerdir $upperdir $workdir2 \
>                     overlay0 $SCRATCH_MNT -oindex=off && \
> -                   $UMOUNT_PROG $SCRATCH_MNT
> +                   _unmount $SCRATCH_MNT
>
>  # Try to mount another overlay with the same workdir
>  # with index=off - expect success
>  _overlay_mount_dirs $lowerdir2 $upperdir2 $workdir \
>                     overlay1 $SCRATCH_MNT -oindex=off && \
> -                   $UMOUNT_PROG $SCRATCH_MNT
> +                   _unmount $SCRATCH_MNT
>
>  # Try to mount another overlay with the same upperdir
>  # with index=on - expect EBUSY
> diff --git a/tests/overlay/037 b/tests/overlay/037
> index 834e17638..70aecb065 100755
> --- a/tests/overlay/037
> +++ b/tests/overlay/037
> @@ -39,17 +39,17 @@ mkdir -p $lowerdir $lowerdir2 $upperdir $upperdir2 $workdir
>  # Mount overlay with lowerdir, upperdir, workdir and index=on
>  # to store the file handles of lowerdir and upperdir in overlay.origin xattr
>  _overlay_scratch_mount_dirs $lowerdir $upperdir $workdir -oindex=on
> -$UMOUNT_PROG $SCRATCH_MNT
> +_unmount $SCRATCH_MNT
>
>  # Try to mount an overlay with the same upperdir and different lowerdir - expect ESTALE
>  _overlay_scratch_mount_dirs $lowerdir2 $upperdir $workdir -oindex=on \
>         2>&1 | _filter_error_mount
> -$UMOUNT_PROG $SCRATCH_MNT 2>/dev/null
> +_unmount $SCRATCH_MNT 2>/dev/null
>
>  # Try to mount an overlay with the same workdir and different upperdir - expect ESTALE
>  _overlay_scratch_mount_dirs $lowerdir $upperdir2 $workdir -oindex=on \
>         2>&1 | _filter_error_mount
> -$UMOUNT_PROG $SCRATCH_MNT 2>/dev/null
> +_unmount $SCRATCH_MNT 2>/dev/null
>
>  # Mount overlay with original lowerdir, upperdir, workdir and index=on - expect success
>  _overlay_scratch_mount_dirs $lowerdir $upperdir $workdir -oindex=on
> diff --git a/tests/overlay/040 b/tests/overlay/040
> index 11c7bf129..aeb4cdc93 100755
> --- a/tests/overlay/040
> +++ b/tests/overlay/040
> @@ -48,7 +48,7 @@ _scratch_mount
>  # modify lower origin file.
>  $CHATTR_PROG +i $SCRATCH_MNT/foo > /dev/null 2>&1
>
> -$UMOUNT_PROG $SCRATCH_MNT
> +_unmount $SCRATCH_MNT
>
>  # touching origin file in lower, should succeed
>  touch $lowerdir/foo
> diff --git a/tests/overlay/041 b/tests/overlay/041
> index 36491b8fa..3517d3652 100755
> --- a/tests/overlay/041
> +++ b/tests/overlay/041
> @@ -142,7 +142,7 @@ subdir_d=$($here/src/t_dir_type $pure_lower_dir $pure_lower_subdir_st_ino)
>  [[ $subdir_d == "subdir d" ]] || \
>         echo "Merged dir: Invalid d_ino reported for subdir"
>
> -$UMOUNT_PROG $SCRATCH_MNT
> +_unmount $SCRATCH_MNT
>
>  # check overlayfs
>  _overlay_check_scratch_dirs $lowerdir $upperdir $workdir -o xino=on
> diff --git a/tests/overlay/042 b/tests/overlay/042
> index aaa10da33..538b87ef9 100755
> --- a/tests/overlay/042
> +++ b/tests/overlay/042
> @@ -45,7 +45,7 @@ _scratch_mount -o index=off
>  # Copy up lower and create upper hardlink with no index
>  ln $SCRATCH_MNT/0 $SCRATCH_MNT/1
>
> -$UMOUNT_PROG $SCRATCH_MNT
> +_unmount $SCRATCH_MNT
>
>  # Add lower hardlinks while overlay is offline
>  ln $lowerdir/0 $lowerdir/2
> diff --git a/tests/overlay/043 b/tests/overlay/043
> index 7325c653a..1683738d7 100755
> --- a/tests/overlay/043
> +++ b/tests/overlay/043
> @@ -126,7 +126,7 @@ echo 3 > /proc/sys/vm/drop_caches
>  check_inode_numbers $testdir $tmp.after_copyup $tmp.after_move
>
>  # Verify that the inode numbers survive a mount cycle
> -$UMOUNT_PROG $SCRATCH_MNT
> +_unmount $SCRATCH_MNT
>  _overlay_scratch_mount_dirs $lowerdir $upperdir $workdir -o redirect_dir=on,xino=on
>
>  # Compare inode numbers before/after mount cycle
> diff --git a/tests/overlay/044 b/tests/overlay/044
> index 4d04d883e..e19613c1c 100755
> --- a/tests/overlay/044
> +++ b/tests/overlay/044
> @@ -99,7 +99,7 @@ cat $FILES
>  check_ino_nlink $SCRATCH_MNT $tmp.before $tmp.after_one
>
>  # Verify that the hardlinks survive a mount cycle
> -$UMOUNT_PROG $SCRATCH_MNT
> +_unmount $SCRATCH_MNT
>  _overlay_check_scratch_dirs $lowerdir $upperdir $workdir -o index=on,xino=on
>  _overlay_scratch_mount_dirs $lowerdir $upperdir $workdir -o index=on,xino=on
>
> diff --git a/tests/overlay/048 b/tests/overlay/048
> index 897e797e2..3de1fa795 100755
> --- a/tests/overlay/048
> +++ b/tests/overlay/048
> @@ -32,7 +32,7 @@ report_nlink()
>                 _ls_l $SCRATCH_MNT/$f | awk '{ print $2, $9 }' | _filter_scratch
>         done
>
> -       $UMOUNT_PROG $SCRATCH_MNT
> +       _unmount $SCRATCH_MNT
>  }
>
>  # Create lower hardlinks
> @@ -101,7 +101,7 @@ touch $SCRATCH_MNT/1
>  touch $SCRATCH_MNT/2
>
>  # Perform the rest of the changes offline
> -$UMOUNT_PROG $SCRATCH_MNT
> +_unmount $SCRATCH_MNT
>
>  test_hardlinks_offline
>
> diff --git a/tests/overlay/049 b/tests/overlay/049
> index 3ee500c5d..c7f93cb93 100755
> --- a/tests/overlay/049
> +++ b/tests/overlay/049
> @@ -32,7 +32,7 @@ create_redirect()
>         touch $SCRATCH_MNT/origin/file
>         mv $SCRATCH_MNT/origin $SCRATCH_MNT/$redirect
>
> -       $UMOUNT_PROG $SCRATCH_MNT
> +       _unmount $SCRATCH_MNT
>  }
>
>  # Import common functions.
> diff --git a/tests/overlay/050 b/tests/overlay/050
> index ec936e2a7..bff002286 100755
> --- a/tests/overlay/050
> +++ b/tests/overlay/050
> @@ -76,7 +76,7 @@ mount_dirs()
>  # Unmount the overlay without unmounting base fs
>  unmount_dirs()
>  {
> -       $UMOUNT_PROG $SCRATCH_MNT
> +       _unmount $SCRATCH_MNT
>  }
>
>  # Check non-stale file handles of lower/upper files and verify
> diff --git a/tests/overlay/051 b/tests/overlay/051
> index 9404dbbab..d99d19678 100755
> --- a/tests/overlay/051
> +++ b/tests/overlay/051
> @@ -28,7 +28,7 @@ _cleanup()
>         # Cleanup overlay scratch mount that is holding base test mount
>         # to prevent _check_test_fs and _test_umount from failing before
>         # _check_scratch_fs _scratch_umount
> -       $UMOUNT_PROG $SCRATCH_MNT 2>/dev/null
> +       _unmount $SCRATCH_MNT 2>/dev/null
>  }
>
>  # Import common functions.
> @@ -103,7 +103,7 @@ mount_dirs()
>  # underlying dirs
>  unmount_dirs()
>  {
> -       $UMOUNT_PROG $SCRATCH_MNT
> +       _unmount $SCRATCH_MNT
>
>         _overlay_check_scratch_dirs $middle:$lower $upper $work \
>                                 -o "index=on,nfs_export=on"
> diff --git a/tests/overlay/052 b/tests/overlay/052
> index 37402067d..9b53cd78a 100755
> --- a/tests/overlay/052
> +++ b/tests/overlay/052
> @@ -73,7 +73,7 @@ mount_dirs()
>  # Unmount the overlay without unmounting base fs
>  unmount_dirs()
>  {
> -       $UMOUNT_PROG $SCRATCH_MNT
> +       _unmount $SCRATCH_MNT
>  }
>
>  # Check non-stale file handles of lower/upper moved files
> diff --git a/tests/overlay/053 b/tests/overlay/053
> index f7891aced..13a4873ee 100755
> --- a/tests/overlay/053
> +++ b/tests/overlay/053
> @@ -30,7 +30,7 @@ _cleanup()
>         # Cleanup overlay scratch mount that is holding base test mount
>         # to prevent _check_test_fs and _test_umount from failing before
>         # _check_scratch_fs _scratch_umount
> -       $UMOUNT_PROG $SCRATCH_MNT 2>/dev/null
> +       _unmount $SCRATCH_MNT 2>/dev/null
>  }
>
>  # Import common functions.
> @@ -99,7 +99,7 @@ mount_dirs()
>  # underlying dirs
>  unmount_dirs()
>  {
> -       $UMOUNT_PROG $SCRATCH_MNT
> +       _unmount $SCRATCH_MNT
>
>         _overlay_check_scratch_dirs $middle:$lower $upper $work \
>                                 -o "index=on,nfs_export=on,redirect_dir=on"
> diff --git a/tests/overlay/054 b/tests/overlay/054
> index 8d7f026a2..260c95d50 100755
> --- a/tests/overlay/054
> +++ b/tests/overlay/054
> @@ -87,7 +87,7 @@ mount_dirs()
>  # Unmount the overlay without unmounting base fs
>  unmount_dirs()
>  {
> -       $UMOUNT_PROG $SCRATCH_MNT
> +       _unmount $SCRATCH_MNT
>  }
>
>  # Check encode/decode/read file handles of dir with non-indexed ancestor
> diff --git a/tests/overlay/055 b/tests/overlay/055
> index 87a348c94..84ce631f0 100755
> --- a/tests/overlay/055
> +++ b/tests/overlay/055
> @@ -37,7 +37,7 @@ _cleanup()
>         # Cleanup overlay scratch mount that is holding base test mount
>         # to prevent _check_test_fs and _test_umount from failing before
>         # _check_scratch_fs _scratch_umount
> -       $UMOUNT_PROG $SCRATCH_MNT 2>/dev/null
> +       _unmount $SCRATCH_MNT 2>/dev/null
>  }
>
>  # Import common functions.
> @@ -109,7 +109,7 @@ mount_dirs()
>  # underlying dirs
>  unmount_dirs()
>  {
> -       $UMOUNT_PROG $SCRATCH_MNT
> +       _unmount $SCRATCH_MNT
>
>         _overlay_check_scratch_dirs $middle:$lower $upper $work \
>                                 -o "index=on,nfs_export=on,redirect_dir=on"
> diff --git a/tests/overlay/056 b/tests/overlay/056
> index 158f34d05..72da81fe0 100755
> --- a/tests/overlay/056
> +++ b/tests/overlay/056
> @@ -73,7 +73,7 @@ mkdir $lowerdir/testdir2/subdir
>  _overlay_scratch_mount_dirs $lowerdir $upperdir $workdir
>  touch $SCRATCH_MNT/testdir1/foo
>  touch $SCRATCH_MNT/testdir2/subdir
> -$UMOUNT_PROG $SCRATCH_MNT
> +_unmount $SCRATCH_MNT
>  remove_impure $upperdir/testdir1
>  remove_impure $upperdir/testdir2
>
> diff --git a/tests/overlay/057 b/tests/overlay/057
> index da7ffda30..325675d54 100755
> --- a/tests/overlay/057
> +++ b/tests/overlay/057
> @@ -48,7 +48,7 @@ _overlay_scratch_mount_dirs $lowerdir $lowerdir2 $workdir2 -o redirect_dir=on
>  # Create opaque parent with absolute redirect child in middle layer
>  mkdir $SCRATCH_MNT/pure
>  mv $SCRATCH_MNT/origin $SCRATCH_MNT/pure/redirect
> -$UMOUNT_PROG $SCRATCH_MNT
> +_unmount $SCRATCH_MNT
>  _overlay_scratch_mount_dirs $lowerdir2:$lowerdir $upperdir $workdir -o redirect_dir=on
>  mv $SCRATCH_MNT/pure/redirect $SCRATCH_MNT/redirect
>  # List content of renamed merge dir before mount cycle
> @@ -56,7 +56,7 @@ ls $SCRATCH_MNT/redirect/
>
>  # Verify that redirects are followed by listing content of renamed merge dir
>  # after mount cycle
> -$UMOUNT_PROG $SCRATCH_MNT
> +_unmount $SCRATCH_MNT
>  _overlay_scratch_mount_dirs $lowerdir2:$lowerdir $upperdir $workdir -o redirect_dir=on
>  ls $SCRATCH_MNT/redirect/
>
> diff --git a/tests/overlay/059 b/tests/overlay/059
> index c48d2a82c..9b9263c09 100755
> --- a/tests/overlay/059
> +++ b/tests/overlay/059
> @@ -33,7 +33,7 @@ create_origin_ref()
>         _scratch_mount -o redirect_dir=on
>         mv $SCRATCH_MNT/origin $SCRATCH_MNT/$ref
>
> -       $UMOUNT_PROG $SCRATCH_MNT
> +       _unmount $SCRATCH_MNT
>  }
>
>  # Import common functions.
> diff --git a/tests/overlay/060 b/tests/overlay/060
> index bb61fcfa6..05dab179d 100755
> --- a/tests/overlay/060
> +++ b/tests/overlay/060
> @@ -130,7 +130,7 @@ mount_ro_overlay()
>
>  umount_overlay()
>  {
> -       $UMOUNT_PROG $SCRATCH_MNT
> +       _unmount $SCRATCH_MNT
>  }
>
>  # Assumes it is called with overlay mounted.
> diff --git a/tests/overlay/062 b/tests/overlay/062
> index e44628b74..4290fbc85 100755
> --- a/tests/overlay/062
> +++ b/tests/overlay/062
> @@ -18,7 +18,7 @@ _cleanup()
>  {
>         cd /
>         rm -f $tmp.*
> -       $UMOUNT_PROG $lowertestdir
> +       _unmount $lowertestdir
>  }
>
>  # Import common functions.
> diff --git a/tests/overlay/063 b/tests/overlay/063
> index d9f30606a..b0468cd58 100755
> --- a/tests/overlay/063
> +++ b/tests/overlay/063
> @@ -40,7 +40,7 @@ rm ${upperdir}/file
>  mkdir ${SCRATCH_MNT}/file > /dev/null 2>&1
>
>  # unmount overlayfs
> -$UMOUNT_PROG $SCRATCH_MNT
> +_unmount $SCRATCH_MNT
>
>  echo "Silence is golden"
>  # success, all done
> diff --git a/tests/overlay/065 b/tests/overlay/065
> index fb6d6dd1b..08ada3242 100755
> --- a/tests/overlay/065
> +++ b/tests/overlay/065
> @@ -30,7 +30,7 @@ _cleanup()
>  {
>         cd /
>         rm -f $tmp.*
> -       $UMOUNT_PROG $mnt2 2>/dev/null
> +       _unmount $mnt2 2>/dev/null
>  }
>
>  # Import common functions.
> @@ -63,7 +63,7 @@ mkdir -p $lowerdir/lower $upperdir $workdir
>  echo Conflicting upperdir/lowerdir
>  _overlay_scratch_mount_dirs $upperdir $upperdir $workdir \
>         2>&1 | _filter_error_mount
> -$UMOUNT_PROG $SCRATCH_MNT 2>/dev/null
> +_unmount $SCRATCH_MNT 2>/dev/null
>
>  # Use new upper/work dirs for each test to avoid ESTALE errors
>  # on mismatch lowerdir/upperdir (see test overlay/037)
> @@ -75,7 +75,7 @@ mkdir $upperdir $workdir
>  echo Conflicting workdir/lowerdir
>  _overlay_scratch_mount_dirs $workdir $upperdir $workdir \
>         -oindex=off 2>&1 | _filter_error_mount
> -$UMOUNT_PROG $SCRATCH_MNT 2>/dev/null
> +_unmount $SCRATCH_MNT 2>/dev/null
>
>  rm -rf $upperdir $workdir
>  mkdir -p $upperdir/lower $workdir
> @@ -85,7 +85,7 @@ mkdir -p $upperdir/lower $workdir
>  echo Overlapping upperdir/lowerdir
>  _overlay_scratch_mount_dirs $upperdir/lower $upperdir $workdir \
>         2>&1 | _filter_error_mount
> -$UMOUNT_PROG $SCRATCH_MNT 2>/dev/null
> +_unmount $SCRATCH_MNT 2>/dev/null
>
>  rm -rf $upperdir $workdir
>  mkdir $upperdir $workdir
> @@ -94,7 +94,7 @@ mkdir $upperdir $workdir
>  echo Conflicting lower layers
>  _overlay_scratch_mount_dirs $lowerdir:$lowerdir $upperdir $workdir \
>         2>&1 | _filter_error_mount
> -$UMOUNT_PROG $SCRATCH_MNT 2>/dev/null
> +_unmount $SCRATCH_MNT 2>/dev/null
>
>  rm -rf $upperdir $workdir
>  mkdir $upperdir $workdir
> @@ -103,7 +103,7 @@ mkdir $upperdir $workdir
>  echo Overlapping lower layers below
>  _overlay_scratch_mount_dirs $lowerdir:$lowerdir/lower $upperdir $workdir \
>         2>&1 | _filter_error_mount
> -$UMOUNT_PROG $SCRATCH_MNT 2>/dev/null
> +_unmount $SCRATCH_MNT 2>/dev/null
>
>  rm -rf $upperdir $workdir
>  mkdir $upperdir $workdir
> @@ -112,7 +112,7 @@ mkdir $upperdir $workdir
>  echo Overlapping lower layers above
>  _overlay_scratch_mount_dirs $lowerdir/lower:$lowerdir $upperdir $workdir \
>         2>&1 | _filter_error_mount
> -$UMOUNT_PROG $SCRATCH_MNT 2>/dev/null
> +_unmount $SCRATCH_MNT 2>/dev/null
>
>  rm -rf $upperdir $workdir
>  mkdir -p $upperdir/upper $workdir $mnt2
> @@ -129,14 +129,14 @@ mkdir -p $upperdir2 $workdir2 $mnt2
>  echo "Overlapping with upperdir of another instance (index=on)"
>  _overlay_scratch_mount_dirs $upperdir/upper $upperdir2 $workdir2 \
>         -oindex=on 2>&1 | _filter_busy_mount
> -$UMOUNT_PROG $SCRATCH_MNT 2>/dev/null
> +_unmount $SCRATCH_MNT 2>/dev/null
>
>  rm -rf $upperdir2 $workdir2
>  mkdir -p $upperdir2 $workdir2
>
>  echo "Overlapping with upperdir of another instance (index=off)"
>  _overlay_scratch_mount_dirs $upperdir/upper $upperdir2 $workdir2 \
> -       -oindex=off && $UMOUNT_PROG $SCRATCH_MNT
> +       -oindex=off && _unmount $SCRATCH_MNT
>
>  rm -rf $upperdir2 $workdir2
>  mkdir -p $upperdir2 $workdir2
> @@ -146,14 +146,14 @@ mkdir -p $upperdir2 $workdir2
>  echo "Overlapping with workdir of another instance (index=on)"
>  _overlay_scratch_mount_dirs $workdir/work $upperdir2 $workdir2 \
>         -oindex=on 2>&1 | _filter_busy_mount
> -$UMOUNT_PROG $SCRATCH_MNT 2>/dev/null
> +_unmount $SCRATCH_MNT 2>/dev/null
>
>  rm -rf $upperdir2 $workdir2
>  mkdir -p $upperdir2 $workdir2
>
>  echo "Overlapping with workdir of another instance (index=off)"
>  _overlay_scratch_mount_dirs $workdir/work $upperdir2 $workdir2 \
> -       -oindex=off && $UMOUNT_PROG $SCRATCH_MNT
> +       -oindex=off && _unmount $SCRATCH_MNT
>
>  # Move upper layer root into lower layer after mount
>  echo Overlapping upperdir/lowerdir after mount
> diff --git a/tests/overlay/067 b/tests/overlay/067
> index bb09a6042..4b57675e2 100755
> --- a/tests/overlay/067
> +++ b/tests/overlay/067
> @@ -70,7 +70,7 @@ stat $testfile >>$seqres.full
>  diff -q $realfile $testfile >>$seqres.full &&
>         echo "diff with middle layer file doesn't know right from wrong! (cold cache)"
>
> -$UMOUNT_PROG $SCRATCH_MNT
> +_unmount $SCRATCH_MNT
>  # check overlayfs
>  _overlay_check_scratch_dirs $middle:$lower $upper $work -o xino=off
>
> diff --git a/tests/overlay/068 b/tests/overlay/068
> index 0d33cf12d..66b1b49ca 100755
> --- a/tests/overlay/068
> +++ b/tests/overlay/068
> @@ -28,7 +28,7 @@ _cleanup()
>         cd /
>         rm -f $tmp.*
>         # Unmount the nested overlay mount
> -       $UMOUNT_PROG $mnt2 2>/dev/null
> +       _unmount $mnt2 2>/dev/null
>  }
>
>  # Import common functions.
> @@ -100,7 +100,7 @@ mount_dirs()
>  unmount_dirs()
>  {
>         # unmount & check nested overlay
> -       $UMOUNT_PROG $mnt2
> +       _unmount $mnt2
>         _overlay_check_dirs $SCRATCH_MNT $upper2 $work2 \
>                 -o "index=on,nfs_export=on,redirect_dir=on"
>
> diff --git a/tests/overlay/069 b/tests/overlay/069
> index 373ab1ee3..b145ad8e2 100755
> --- a/tests/overlay/069
> +++ b/tests/overlay/069
> @@ -28,7 +28,7 @@ _cleanup()
>         cd /
>         rm -f $tmp.*
>         # Unmount the nested overlay mount
> -       $UMOUNT_PROG $mnt2 2>/dev/null
> +       _unmount $mnt2 2>/dev/null
>  }
>
>  # Import common functions.
> @@ -108,12 +108,12 @@ mount_dirs()
>  unmount_dirs()
>  {
>         # unmount & check nested overlay
> -       $UMOUNT_PROG $mnt2
> +       _unmount $mnt2
>         _overlay_check_dirs $SCRATCH_MNT $upper2 $work2 \
>                 -o "index=on,nfs_export=on,redirect_dir=on"
>
>         # unmount & check underlying overlay
> -       $UMOUNT_PROG $SCRATCH_MNT
> +       _unmount $SCRATCH_MNT
>         _overlay_check_dirs $lower $upper $work \
>                 -o "index=on,nfs_export=on,redirect_dir=on"
>  }
> diff --git a/tests/overlay/070 b/tests/overlay/070
> index 36991229f..078dda417 100755
> --- a/tests/overlay/070
> +++ b/tests/overlay/070
> @@ -26,7 +26,7 @@ _cleanup()
>         cd /
>         rm -f $tmp.*
>         # Unmount the nested overlay mount
> -       $UMOUNT_PROG $mnt2 2>/dev/null
> +       _unmount $mnt2 2>/dev/null
>         [ -z "$loopdev" ] || _destroy_loop_device $loopdev
>  }
>
> @@ -93,12 +93,12 @@ mount_dirs()
>  unmount_dirs()
>  {
>         # unmount & check nested overlay
> -       $UMOUNT_PROG $mnt2
> +       _unmount $mnt2
>         _overlay_check_dirs $SCRATCH_MNT $upper2 $work2 \
>                 -o "redirect_dir=on,index=on,xino=on"
>
>         # unmount & check underlying overlay
> -       $UMOUNT_PROG $SCRATCH_MNT
> +       _unmount $SCRATCH_MNT
>         _overlay_check_scratch_dirs $lower $upper $work \
>                 -o "index=on,nfs_export=on"
>  }
> diff --git a/tests/overlay/071 b/tests/overlay/071
> index 2a6313142..1954d0cb1 100755
> --- a/tests/overlay/071
> +++ b/tests/overlay/071
> @@ -29,7 +29,7 @@ _cleanup()
>         cd /
>         rm -f $tmp.*
>         # Unmount the nested overlay mount
> -       $UMOUNT_PROG $mnt2 2>/dev/null
> +       _unmount $mnt2 2>/dev/null
>         [ -z "$loopdev" ] || _destroy_loop_device $loopdev
>  }
>
> @@ -103,12 +103,12 @@ mount_dirs()
>  unmount_dirs()
>  {
>         # unmount & check nested overlay
> -       $UMOUNT_PROG $mnt2
> +       _unmount $mnt2
>         _overlay_check_dirs $SCRATCH_MNT $upper2 $work2 \
>                 -o "redirect_dir=on,index=on,xino=on"
>
>         # unmount & check underlying overlay
> -       $UMOUNT_PROG $SCRATCH_MNT
> +       _unmount $SCRATCH_MNT
>         _overlay_check_dirs $lower $upper $work \
>                 -o "index=on,nfs_export=on"
>  }
> diff --git a/tests/overlay/076 b/tests/overlay/076
> index fb94dff68..a137ac803 100755
> --- a/tests/overlay/076
> +++ b/tests/overlay/076
> @@ -47,7 +47,7 @@ _scratch_mount
>  # on kernel v5.10..v5.10.14.  Anything but hang is considered a test success.
>  $CHATTR_PROG +i $SCRATCH_MNT/foo > /dev/null 2>&1
>
> -$UMOUNT_PROG $SCRATCH_MNT
> +_unmount $SCRATCH_MNT
>
>  # success, all done
>  echo "Silence is golden"
> diff --git a/tests/overlay/077 b/tests/overlay/077
> index 00de0825a..a322709e8 100755
> --- a/tests/overlay/077
> +++ b/tests/overlay/077
> @@ -65,7 +65,7 @@ mv $SCRATCH_MNT/f100 $SCRATCH_MNT/former/
>
>  # Remove the lower directory and mount overlay again to create
>  # a "former merge dir"
> -$UMOUNT_PROG $SCRATCH_MNT
> +_unmount $SCRATCH_MNT
>  rm -rf $lowerdir/former
>  _scratch_mount
>
> diff --git a/tests/overlay/078 b/tests/overlay/078
> index d6df11f68..0ee9e54d9 100755
> --- a/tests/overlay/078
> +++ b/tests/overlay/078
> @@ -61,7 +61,7 @@ do_check()
>
>         echo "Test chattr +$1 $2" >> $seqres.full
>
> -       $UMOUNT_PROG $SCRATCH_MNT
> +       _unmount $SCRATCH_MNT
>
>         # Add attribute to lower file
>         $CHATTR_PROG +$attr $lowertestfile
> diff --git a/tests/overlay/079 b/tests/overlay/079
> index cfcafceea..2ea9ba93b 100755
> --- a/tests/overlay/079
> +++ b/tests/overlay/079
> @@ -156,7 +156,7 @@ mount_ro_overlay()
>
>  umount_overlay()
>  {
> -       $UMOUNT_PROG $SCRATCH_MNT
> +       _unmount $SCRATCH_MNT
>  }
>
>  test_no_access()
> diff --git a/tests/overlay/080 b/tests/overlay/080
> index ce5c2375f..77fd8dbfe 100755
> --- a/tests/overlay/080
> +++ b/tests/overlay/080
> @@ -264,7 +264,7 @@ mount_overlay()
>
>  umount_overlay()
>  {
> -       $UMOUNT_PROG $SCRATCH_MNT
> +       _unmount $SCRATCH_MNT
>  }
>
>
> diff --git a/tests/overlay/081 b/tests/overlay/081
> index 2270a0475..39eac6466 100755
> --- a/tests/overlay/081
> +++ b/tests/overlay/081
> @@ -46,7 +46,7 @@ ovl_fsid=$(stat -f -c '%i' $test_dir)
>         echo "Overlayfs (uuid=null) and upper fs fsid differ"
>
>  # Keep base fs mounted in case it has a volatile fsid (e.g. tmpfs)
> -$UMOUNT_PROG $SCRATCH_MNT
> +_unmount $SCRATCH_MNT
>
>  # Test legacy behavior is preserved by default for existing "impure" overlayfs
>  _scratch_mount
> @@ -55,7 +55,7 @@ ovl_fsid=$(stat -f -c '%i' $test_dir)
>  [[ "$ovl_fsid" == "$upper_fsid" ]] || \
>         echo "Overlayfs (after uuid=null) and upper fs fsid differ"
>
> -$UMOUNT_PROG $SCRATCH_MNT
> +_unmount $SCRATCH_MNT
>
>  # Test unique fsid on explicit opt-in for existing "impure" overlayfs
>  _scratch_mount -o uuid=on
> @@ -65,7 +65,7 @@ ovl_unique_fsid=$ovl_fsid
>  [[ "$ovl_fsid" != "$upper_fsid" ]] || \
>         echo "Overlayfs (uuid=on) and upper fs fsid are the same"
>
> -$UMOUNT_PROG $SCRATCH_MNT
> +_unmount $SCRATCH_MNT
>
>  # Test unique fsid is persistent by default after it was created
>  _scratch_mount
> @@ -74,7 +74,7 @@ ovl_fsid=$(stat -f -c '%i' $test_dir)
>  [[ "$ovl_fsid" == "$ovl_unique_fsid" ]] || \
>         echo "Overlayfs (after uuid=on) unique fsid is not persistent"
>
> -$UMOUNT_PROG $SCRATCH_MNT
> +_unmount $SCRATCH_MNT
>
>  # Test ignore existing persistent fsid on explicit opt-out
>  _scratch_mount -o uuid=null
> @@ -83,7 +83,7 @@ ovl_fsid=$(stat -f -c '%i' $test_dir)
>  [[ "$ovl_fsid" == "$upper_fsid" ]] || \
>         echo "Overlayfs (uuid=null) and upper fs fsid differ"
>
> -$UMOUNT_PROG $SCRATCH_MNT
> +_unmount $SCRATCH_MNT
>
>  # Test fallback to uuid=null with non-upper ovelray
>  _overlay_scratch_mount_dirs "$upperdir:$lowerdir" "-" "-" -o ro,uuid=on
> @@ -110,7 +110,7 @@ ovl_unique_fsid=$ovl_fsid
>  [[ "$ovl_fsid" != "$upper_fsid" ]] || \
>         echo "Overlayfs (new) and upper fs fsid are the same"
>
> -$UMOUNT_PROG $SCRATCH_MNT
> +_unmount $SCRATCH_MNT
>
>  # Test unique fsid is persistent by default after it was created
>  _scratch_mount -o uuid=on
> @@ -119,7 +119,7 @@ ovl_fsid=$(stat -f -c '%i' $test_dir)
>  [[ "$ovl_fsid" == "$ovl_unique_fsid" ]] || \
>         echo "Overlayfs (uuid=on) unique fsid is not persistent"
>
> -$UMOUNT_PROG $SCRATCH_MNT
> +_unmount $SCRATCH_MNT
>
>  echo "Silence is golden"
>  status=0
> diff --git a/tests/overlay/083 b/tests/overlay/083
> index d037d4c85..551471d45 100755
> --- a/tests/overlay/083
> +++ b/tests/overlay/083
> @@ -52,7 +52,7 @@ $MOUNT_PROG -t overlay | grep ovl_esc_test  | tee -a $seqres.full | grep -v spac
>
>  # Re-create the upper/work dirs to mount them with a different lower
>  # This is required in case index feature is enabled
> -$UMOUNT_PROG $SCRATCH_MNT
> +_unmount $SCRATCH_MNT
>  rm -rf "$upperdir" "$workdir"
>  mkdir -p "$upperdir" "$workdir"
>
> diff --git a/tests/overlay/084 b/tests/overlay/084
> index 28e9a76dc..d0bf06ecb 100755
> --- a/tests/overlay/084
> +++ b/tests/overlay/084
> @@ -15,7 +15,7 @@ _cleanup()
>  {
>         cd /
>         # Unmount nested mounts if things fail
> -       $UMOUNT_PROG $OVL_BASE_SCRATCH_MNT/nested  2>/dev/null
> +       _unmount $OVL_BASE_SCRATCH_MNT/nested  2>/dev/null
>         rm -rf $tmp
>  }
>
> @@ -44,7 +44,7 @@ nesteddir=$OVL_BASE_SCRATCH_MNT/nested
>
>  umount_overlay()
>  {
> -       $UMOUNT_PROG $SCRATCH_MNT
> +       _unmount $SCRATCH_MNT
>  }
>
>  test_escape()
> @@ -88,12 +88,12 @@ test_escape()
>         echo "nested xattr mount with trusted.overlay"
>         _overlay_mount_dirs $SCRATCH_MNT/layer2:$SCRATCH_MNT/layer1 - - overlayfs $nesteddir
>         stat $nesteddir/dir/file  2>&1 | _filter_scratch
> -       $UMOUNT_PROG $nesteddir
> +       _unmount $nesteddir
>
>         echo "nested xattr mount with user.overlay"
>         _overlay_mount_dirs $SCRATCH_MNT/layer2:$SCRATCH_MNT/layer1 - - -o userxattr overlayfs $nesteddir
>         stat $nesteddir/dir/file  2>&1 | _filter_scratch
> -       $UMOUNT_PROG $nesteddir
> +       _unmount $nesteddir
>
>         # Also ensure propagate the escaped xattr when we copy-up layer2/dir
>         echo "copy-up of escaped xattrs"
> @@ -164,7 +164,7 @@ test_escaped_xwhiteout()
>
>         do_test_xwhiteout $prefix $nesteddir
>
> -       $UMOUNT_PROG $nesteddir
> +       _unmount $nesteddir
>  }
>
>  test_escaped_xwhiteout trusted
> diff --git a/tests/overlay/085 b/tests/overlay/085
> index 046d01d16..95665fba8 100755
> --- a/tests/overlay/085
> +++ b/tests/overlay/085
> @@ -157,7 +157,7 @@ mount_ro_overlay()
>
>  umount_overlay()
>  {
> -       $UMOUNT_PROG $SCRATCH_MNT
> +       _unmount $SCRATCH_MNT
>  }
>
>  test_no_access()
> diff --git a/tests/overlay/086 b/tests/overlay/086
> index 9c8a00588..d0b2a76ca 100755
> --- a/tests/overlay/086
> +++ b/tests/overlay/086
> @@ -38,21 +38,21 @@ $MOUNT_PROG -t overlay none $SCRATCH_MNT \
>         2>> $seqres.full && \
>         echo "ERROR: invalid combination of lowerdir and lowerdir+ mount options"
>
> -$UMOUNT_PROG $SCRATCH_MNT 2>/dev/null
> +_unmount $SCRATCH_MNT 2>/dev/null
>
>  $MOUNT_PROG -t overlay none $SCRATCH_MNT \
>         -o"lowerdir=$lowerdir,datadir+=$lowerdir_colons" \
>         -o redirect_dir=follow,metacopy=on 2>> $seqres.full && \
>         echo "ERROR: invalid combination of lowerdir and datadir+ mount options"
>
> -$UMOUNT_PROG $SCRATCH_MNT 2>/dev/null
> +_unmount $SCRATCH_MNT 2>/dev/null
>
>  $MOUNT_PROG -t overlay none $SCRATCH_MNT \
>         -o"datadir+=$lowerdir,lowerdir+=$lowerdir_colons" \
>         -o redirect_dir=follow,metacopy=on 2>> $seqres.full && \
>         echo "ERROR: invalid order of lowerdir+ and datadir+ mount options"
>
> -$UMOUNT_PROG $SCRATCH_MNT 2>/dev/null
> +_unmount $SCRATCH_MNT 2>/dev/null
>
>  # mount is expected to fail with escaped colons.
>  $MOUNT_PROG -t overlay none $SCRATCH_MNT \
> @@ -60,7 +60,7 @@ $MOUNT_PROG -t overlay none $SCRATCH_MNT \
>         2>> $seqres.full && \
>         echo "ERROR: incorrect parsing of escaped colons in lowerdir+ mount option"
>
> -$UMOUNT_PROG $SCRATCH_MNT 2>/dev/null
> +_unmount $SCRATCH_MNT 2>/dev/null
>
>  # mount is expected to succeed without escaped colons.
>  $MOUNT_PROG -t overlay ovl_esc_test $SCRATCH_MNT \





[Index of Archives]     [Linux Filesystems Development]     [Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux