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