From c327d5a637adcfd257d5e181428125fed6741200 Mon Sep 17 00:00:00 2001 From: Filipe Manana Date: Mon, 8 Feb 2016 09:27:14 +1100 Subject: [PATCH] btrfs: fix test failures after commit 27d077ec0bda Commit 27d077ec0bda (common: use mount/umount helpers everywhere) made a few btrfs tests fail (btrfs/003 and btrfs/011). These tests create filesystems with multiple devices and test the device replace feature, which need to unmount using the mount path ($SCRATCH_MNT) because unmounting using one of the devices as an argument ($SCRATCH_DEV) does not always work - after replace operations we get in /proc/mounts a device other than $SCRATCH_DEV associated with the mount point $SCRATCH_MNT (this is mentioned in a comment at btrfs/011 for example), so we need to pass that other device to the umount program or pass it the mount point. Fix this by making _sctatch_unmount() pass $SCRATCH_MNT to umount instead of $SCRATCH_DEV (when the filesystem being tested is btrfs). Signed-off-by: Filipe Manana Reviewed-by: Dave Chinner Signed-off-by: Dave Chinner --- common/rc | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/common/rc b/common/rc index c1fd58e2..0c4ef666 100644 --- a/common/rc +++ b/common/rc @@ -316,11 +316,17 @@ _scratch_mount() _scratch_unmount() { - if [ "$FSTYP" == "overlay" ]; then + case "$FSTYP" in + overlay) _overlay_scratch_unmount - else + ;; + btrfs) + $UMOUNT_PROG $SCRATCH_MNT + ;; + *) $UMOUNT_PROG $SCRATCH_DEV - fi + ;; + esac } _scratch_remount() -- 2.39.5