fstests: fix btrfs test failures after commit 27d077ec0bda
PATCH v3 1/1 fstests: fix btrfs test failures after commit 27d077ec0bda
From: Filipe Manana <[email protected]>
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).
---
V2: Change _sctatch_unmount() to pass $SCRATCH_MNT as the argument to the
umount program instead of $SCRATCH_DEV. This makes the btrfs tests pass again.
V3: Pass $SCRATCH_MNT to the umount program instead of $SCRATCH_DEV only
if the filesystem being tested is btrfs. This was making generic/050 fail (which I couldn't test using btrfs because btrfs does not have the shutdown feature unlike xfs for e.g.).
common/rc | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-)
common/rc +9 -3
@@ -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()
Signature · 1 line
2.1.3