xfstests - SCRATCH_DIR mounted/unmounted twice when testing nfs

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

 



Tests 124, 127 and 128 unmount their SCRATCH_DEV manually while using _cleanup_testdir in trapped cleanup function.
This can lead to test fails due to double unmount on nfs where _cleanup_testdir unmounts SCRATCH_DEV.

Tests 129 and 130 use _setup_testdir and _scratch_mount that can lead to double mount on nfs where _setup_testdir mounts SCRATCH_DEV.

The least invasive patch (only nfs shall be affected by this patch) I could come up with that fixed this issue used conditional umounts in _cleanup_testdir and conditional mount/remount in _scratch_mount (remount was used so that mount flags do not get lost).

Alternatively, _setup_testdir could stop mounting SCRATCH_DEV but that would be probably too invasive.

Signed-off-by: Boris Ranto <branto@xxxxxxxxxx>

diff --git a/common.rc b/common.rc
index e634fbb..6a701a6 100644
--- a/common.rc
+++ b/common.rc
@@ -227,6 +227,10 @@ _scratch_mount_options()
 
 _scratch_mount()
 {
+    if [ "$FSTYP" = "nfs" -a -n "$(_mount | grep $SCRATCH_DEV |grep
$SCRATCH_MNT)" ]
+    then
+       _scratch_unmount
+    fi
     _mount -t $FSTYP `_scratch_mount_options $*`
 }
 
@@ -1379,7 +1383,10 @@ _cleanup_testdir()
        ;;
     nfs*)
        # umount testdir as it is $SCRATCH_MNT which could be used by
xfs next
-       [ -n "$testdir" ] && $UMOUNT_PROG $testdir
+       if _mount | grep $SCRATCH_DEV |grep -q $testdir
+       then
+          [ -n "$testdir" ] && $UMOUNT_PROG $testdir
+       fi
        ;;
     *)
        # do nothing, testdir is $TEST_DIR

_______________________________________________
xfs mailing list
xfs@xxxxxxxxxxx
http://oss.sgi.com/mailman/listinfo/xfs


[Index of Archives]     [Linux XFS Devel]     [Linux Filesystem Development]     [Filesystem Testing]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux