fstests: rudimentary overlayfs testing
cover fstests: rudimentary overlayfs testing
2 patches to facilitate rudimentary overlayfs testing.
this doesn't test anything specific to overlayfs, but runs every existing test on top of an overlayfs upper directory.
Most pass; some fail - I have not yet sorted through the results.
How useful this is, I'm not sure, but it doesn't seem too invasive, so is perhaps worth considering.
Thanks,
-Eric
PATCH 1/2 fstests: use mount/umount helpers everywhere
Replace every explicit mount/umount of scratch or test devices with helper functions. This allows the next patch to add in hooks to these functions in order to set up & tear down overlayfs on every mount/umount.
(also adds _test_unmount(), which didn't exist prior)
---
check +5 -5
@@ -461,7 +461,7 @@ for section in $HOST_OPTIONS_SECTIONS; do if $RECREATE_TEST_DEV || [ "$OLD_FSTYP" != "$FSTYP" ]; then echo "RECREATING -- $FSTYP on $TEST_DEV" - umount $TEST_DEV 2> /dev/null + _test_unmount 2> /dev/null if ! _test_mkfs >$tmp.err 2>&1 then echo "our local _test_mkfs routine ..."
@@ -476,7 +476,7 @@ for section in $HOST_OPTIONS_SECTIONS; do fi _prepare_test_list elif [ "$OLD_MOUNT_OPTIONS" != "$MOUNT_OPTIONS" ]; then - umount $TEST_DEV 2> /dev/null + _test_unmount 2> /dev/null out=`_mount_or_remount_rw "$MOUNT_OPTIONS" $TEST_DEV $TEST_DIR` if [ $? -ne 1 ]; then echo $out
@@ -505,7 +505,7 @@ for section in $HOST_OPTIONS_SECTIONS; do needwrap=true if [ ! -z "$SCRATCH_DEV" ]; then - umount $SCRATCH_DEV 2>/dev/null + _scratch_unmount 2>/dev/null # call the overridden mkfs - make sure the FS is built # the same as we'll create it later.
@@ -677,8 +677,8 @@ for section in $HOST_OPTIONS_SECTIONS; do _wrapup echo - umount $TEST_DEV 2> /dev/null - umount $SCRATCH_DEV 2> /dev/null + _test_unmount 2> /dev/null + _scratch_unmount 2> /dev/null done interrupt=false
common/attr +1 -1
@@ -233,7 +233,7 @@ _require_noattr2() { _scratch_mkfs_xfs > /dev/null 2>&1 \ || _fail "_scratch_mkfs_xfs failed on $SCRATCH_DEV" - _mount -o noattr2 $SCRATCH_DEV > /dev/null 2>&1 \ + _scratch_mount -o noattr2 > /dev/null 2>&1 \ || _notrun "noattr2 mount option not supported on $SCRATCH_DEV" _scratch_unmount }
common/dump +1 -1
@@ -288,7 +288,7 @@ _cleanup() _stable_fs() { _saveddir=`pwd`; cd / - umount $SCRATCH_MNT >>$seqres.full || _fail "unmount failed" + _scratch_unmount >>$seqres.full || _fail "unmount failed" _scratch_mount >>$seqres.full || _fail "mount failed" cd $_saveddir }
common/filestreams +1 -1
@@ -225,5 +225,5 @@ _cleanup_streams_umount() { cd / rm -rf ${SCRATCH_MNT}/stream* - umount $SCRATCH_DEV 2>/dev/null + _scratch_unmount 2>/dev/null }
common/log +3 -3
@@ -339,7 +339,7 @@ _create_log() # unmount the FS _full "umount" - umount $SCRATCH_DEV >>$seqres.full 2>&1 + _scratch_unmount >>$seqres.full 2>&1 if [ $? -ne 0 ] ; then _echofull "umount failed" return 1
@@ -370,7 +370,7 @@ _create_log_sync() # unmount the FS _full "umount" - umount $SCRATCH_DEV >>$seqres.full 2>&1 + _scratch_unmount >>$seqres.full 2>&1 if [ $? -ne 0 ] ; then _echofull "umount failed" return 1
@@ -482,7 +482,7 @@ _require_v2log() # check after unmount to see if it is clean # i.e. it is not a 6.5.25 buggy version checking kernel touch $SCRATCH_MNT/file - umount $SCRATCH_DEV >>$seqres.full 2>&1 + _scratch_unmount >>$seqres.full 2>&1 if _scratch_xfs_logprint -t | tee -a $seqres.full \ | head | grep -q "<DIRTY>"; then _notrun "kernel does not support v2 logs"
common/quota +1 -1
@@ -167,7 +167,7 @@ _choose_prid() _qmount() { - umount $SCRATCH_DEV >/dev/null 2>&1 + _scratch_unmount >/dev/null 2>&1 _scratch_mount || _fail "qmount failed" chmod ugo+rwx $SCRATCH_MNT }
common/rc +13 -7
@@ -229,9 +229,15 @@ _test_mount() _mount -t $FSTYP $TEST_OPTIONS $TEST_FS_MOUNT_OPTS $SELINUX_MOUNT_OPTIONS $* $TEST_DEV $TEST_DIR } -_test_remount() +_test_unmount() { $UMOUNT_PROG $TEST_DEV +} + + +_test_remount() +{ + _test_unmount _test_mount }
@@ -285,7 +291,7 @@ _setup_large_xfs_fs() $SCRATCH_MNT/.use_space 2>&1 > /dev/null export NUM_SPACE_FILES=1 status=$? - umount $SCRATCH_MNT + _scratch_unmount if [ $status -ne 0 ]; then echo "large file prealloc failed" cat $tmp_dir/mnt.err >&2
@@ -452,7 +458,7 @@ _setup_large_ext4_fs() fi export NUM_SPACE_FILES=$nfiles - umount $SCRATCH_MNT + _scratch_unmount if [ $status -ne 0 ]; then echo "large file prealloc failed" cat $tmp_dir/mnt.err >&2
@@ -1120,7 +1126,7 @@ _require_scratch_nocheck() exit 1 fi # and then unmount it - if ! $UMOUNT_PROG $SCRATCH_DEV + if ! _scratch_unmount then echo "failed to unmount $SCRATCH_DEV" exit 1
@@ -1340,7 +1346,7 @@ _require_xfs_crc() _scratch_mkfs_xfs -m crc=1 >/dev/null 2>&1 _scratch_mount >/dev/null 2>&1 \ || _notrun "Kernel doesn't support crc feature" - umount $SCRATCH_MNT + _scratch_unmount } # this test requires the bigalloc feature to be available in mkfs.ext4
@@ -1358,7 +1364,7 @@ _require_ext4_bigalloc() $MKFS_EXT4_PROG -F -O bigalloc $SCRATCH_DEV 512m >/dev/null 2>&1 _scratch_mount >/dev/null 2>&1 \ || _notrun "Ext4 kernel doesn't support bigalloc feature" - umount $SCRATCH_MNT + _scratch_unmount } # this test requires the finobt feature to be available in mkfs.xfs
@@ -1376,7 +1382,7 @@ _require_xfs_finobt() _scratch_mkfs_xfs -m crc=1,finobt=1 >/dev/null 2>&1 _scratch_mount >/dev/null 2>&1 \ || _notrun "Kernel doesn't support finobt feature" - umount $SCRATCH_MNT + _scratch_unmount } # this test requires xfs sysfs attribute support
common/repair +2 -2
@@ -113,7 +113,7 @@ _check_repair() dd if=/bin/bash of=$SCRATCH_MNT/sh 2>&1 |_filter_dd sync rm -f $SCRATCH_MNT/sh - umount $SCRATCH_MNT + _scratch_unmount _zero_position $value "$structure" _scratch_xfs_repair 2>&1 | _filter_repair
@@ -126,7 +126,7 @@ _check_repair() POSIXLY_CORRECT=yes \ dd if=$SCRATCH_MNT/sh of=/dev/null 2>&1 |_filter_dd #read rm -f $SCRATCH_MNT/sh #unlink - umount $SCRATCH_MNT #umount + _scratch_unmount #umount } # make sure this script returns success
tests/btrfs/002 +1 -1
@@ -185,7 +185,7 @@ _save_checksum $SNAPNAME $tmp.$tname.sum \rm -rf $firstvol/* _verify_checksum $SNAPNAME $tmp.$tname.sum -umount $SCRATCH_DEV || _fail "unmount failed" +_scratch_unmount || _fail "unmount failed" echo "Silence is golden" status=0; exit
tests/btrfs/003 +8 -8
@@ -36,7 +36,7 @@ _cleanup() cd / rm -f $tmp.* if [ $dev_removed == 1 ]; then - umount $SCRATCH_MNT + _scratch_unmount _devmgt_add "${DEVHTL}" fi }
@@ -63,7 +63,7 @@ _test_raid0() _scratch_mount dirp=`mktemp -duq $SCRATCH_MNT/dir.XXXXXX` _populate_fs -n 1 -f 20 -d 10 -r $dirp -s 10 - umount $SCRATCH_MNT + _scratch_unmount } _test_raid1()
@@ -73,7 +73,7 @@ _test_raid1() _scratch_mount dirp=`mktemp -duq $SCRATCH_MNT/dir.XXXXXX` _populate_fs -n 1 -f 20 -d 10 -r $dirp -s 10 - umount $SCRATCH_MNT + _scratch_unmount } _test_raid10()
@@ -83,7 +83,7 @@ _test_raid10() _scratch_mount dirp=`mktemp -duq $SCRATCH_MNT/dir.XXXXXX` _populate_fs -n 1 -f 20 -d 10 -r $dirp -s 10 - umount $SCRATCH_MNT + _scratch_unmount } _test_single()
@@ -93,7 +93,7 @@ _test_single() _scratch_mount dirp=`mktemp -duq $SCRATCH_MNT/dir.XXXXXX` _populate_fs -n 1 -f 20 -d 10 -r $dirp -s 10 - umount $SCRATCH_MNT + _scratch_unmount } _test_add()
@@ -115,7 +115,7 @@ _test_add() $BTRFS_UTIL_PROG device add ${devs[$i]} $SCRATCH_MNT >> $seqres.full 2>&1 || _fail "device add failed" done $BTRFS_UTIL_PROG filesystem balance $SCRATCH_MNT >> $seqres.full 2>&1 || _fail "balance failed" - umount $SCRATCH_MNT + _scratch_unmount } _test_replace()
@@ -161,7 +161,7 @@ _test_replace() $BTRFS_UTIL_PROG filesystem balance $SCRATCH_MNT >> $seqres.full 2>&1 || _fail "dev balance failed" # cleaup. add the removed disk - umount $SCRATCH_MNT + _scratch_unmount _devmgt_add "${DEVHTL}" dev_removed=0 }
@@ -177,7 +177,7 @@ _test_remove() dev_del=`echo ${SCRATCH_DEV_POOL} | awk '{print $NF}'` $BTRFS_UTIL_PROG device delete $dev_del $SCRATCH_MNT || _fail "btrfs device delete failed" $BTRFS_UTIL_PROG filesystem show $SCRATCH_DEV 2>&1 | grep $dev_del >> $seqres.full && _fail "btrfs still shows the deleted dev" - umount $SCRATCH_MNT + _scratch_unmount } _test_raid0
tests/btrfs/004 +3 -3
@@ -180,7 +180,7 @@ workout() snap_name=$4 do_bg_noise=$5 - umount $SCRATCH_DEV >/dev/null 2>&1 + _scratch_unmount >/dev/null 2>&1 echo "*** mkfs -dsize=$fsz" >>$seqres.full echo "" >>$seqres.full _scratch_mkfs_sized $fsz >>$seqres.full 2>&1 \
@@ -193,7 +193,7 @@ workout() _run_btrfs_util_prog subvolume snapshot $SCRATCH_MNT \ $SCRATCH_MNT/$snap_name - run_check umount $SCRATCH_DEV >/dev/null 2>&1 + run_check _scratch_unmount >/dev/null 2>&1 run_check _scratch_mount "-o compress=lzo" # make some noise but ensure we're not touching existing data
@@ -207,7 +207,7 @@ workout() # now make more files to get a higher tree run_check $FSSTRESS_PROG -d $clean_dir -w -p $procs -n 2000 \ $FSSTRESS_AVOID - run_check umount $SCRATCH_DEV >/dev/null 2>&1 + run_check _scratch_unmount >/dev/null 2>&1 run_check _scratch_mount "-o atime" if [ $do_bg_noise -ne 0 ]; then
tests/btrfs/005 +2 -2
@@ -106,12 +106,12 @@ _checksum() _cleanup_defrag() { - umount $SCRATCH_MNT > /dev/null 2>&1 + _scratch_unmount > /dev/null 2>&1 } _setup_defrag() { - umount $SCRATCH_MNT > /dev/null 2>&1 + _scratch_unmount > /dev/null 2>&1 _scratch_mkfs > /dev/null 2>&1 _scratch_mount _create_file $1
tests/btrfs/007 +3 -3
@@ -37,7 +37,7 @@ status=1 _cleanup() { echo "*** unmount" - umount $SCRATCH_MNT 2>/dev/null + _scratch_unmount 2>/dev/null rm -f $tmp.* } trap "_cleanup; exit \$status" 0 1 2 3 15
@@ -61,7 +61,7 @@ workout() fsz=$1 ops=$2 - umount $SCRATCH_DEV >/dev/null 2>&1 + _scratch_unmount >/dev/null 2>&1 echo "*** mkfs -dsize=$fsz" >>$seqres.full echo "" >>$seqres.full _scratch_mkfs_sized $fsz >>$seqres.full 2>&1 \
@@ -87,7 +87,7 @@ workout() run_check $FSSUM_PROG -A -f -w $tmp/incr.fssum -x $SCRATCH_MNT/incr/base \ $SCRATCH_MNT/incr - umount $SCRATCH_DEV >/dev/null 2>&1 + _scratch_unmount >/dev/null 2>&1 echo "*** mkfs -dsize=$fsz" >>$seqres.full echo "" >>$seqres.full _scratch_mkfs_sized $fsz >>$seqres.full 2>&1 \
tests/btrfs/011 +3 -3
@@ -151,7 +151,7 @@ workout() sync; sync btrfs_replace_test $source_dev $target_dev "" $with_cancel $quick - umount $SCRATCH_MNT > /dev/null 2>&1 + _scratch_unmount > /dev/null 2>&1 if echo $mkfs_options | egrep -qv "raid1|raid5|raid6|raid10" || \ [ "${with_cancel}Q" = "cancelQ" ]; then
@@ -201,7 +201,7 @@ workout() fi btrfs_replace_test $source_dev $target_dev "-r" $with_cancel $quick - umount $SCRATCH_MNT > /dev/null 2>&1 + _scratch_unmount > /dev/null 2>&1 } btrfs_replace_test()
@@ -264,7 +264,7 @@ btrfs_replace_test() # because in /proc/mounts the 2nd device of the filesystem is # shown after the replace operation. Let's just do the mount # test manually after _check_btrfs_filesystem is finished. - umount $SCRATCH_MNT > /dev/null 2>&1 + _scratch_unmount > /dev/null 2>&1 if [ "${with_cancel}Q" != "cancelQ" ]; then # after the replace operation, use the target_dev for everything _check_btrfs_filesystem $target_dev
tests/btrfs/029 +2 -2
@@ -39,7 +39,7 @@ trap "_cleanup; exit \$status" 0 1 2 3 15 _cleanup() { - umount $SCRATCH_MNT &>/dev/null + _scratch_unmount &>/dev/null cd / rm -f $tmp.* }
@@ -103,7 +103,7 @@ _scratch_unmount echo "test reflinks across different mountpoints of same device" mount $TEST_DEV $SCRATCH_MNT || _fail "Couldn't double-mount $TEST_DEV" _create_reflinks_to $DUAL_MOUNT_DIR -umount $SCRATCH_MNT +_scratch_unmount # success, all done status=0
tests/btrfs/031 +1 -1
@@ -36,7 +36,7 @@ trap "_cleanup; exit \$status" 0 1 2 3 15 _cleanup() { - umount $SCRATCH_MNT + _scratch_unmount rm -rf $TESTDIR1 rm -rf $TESTDIR2 $BTRFS_UTIL_PROG subvolume delete $SUBVOL1 >> $seqres.full
tests/ext4/002 +1 -1
@@ -78,7 +78,7 @@ _check_ext4_eof_flag() bit_set=1 # Unmount the ${TEST_DEV} - umount ${TEST_DEV} + _test_unmount # Run debugfs to gather file_parameters - specifically iflags. file_params=`debugfs ${TEST_DEV} -R "stat ${1}" 2>&1 | grep -e Flags:`
tests/ext4/301 +1 -1
@@ -112,7 +112,7 @@ _scratch_mkfs >> $seqres.full 2>&1 _scratch_mount if ! _workout; then - umount $SCRATCH_DEV 2>/dev/null + _scratch_unmount 2>/dev/null exit fi
tests/ext4/302 +1 -1
@@ -130,7 +130,7 @@ _scratch_mkfs >> $seqres.full 2>&1 _scratch_mount if ! _workout; then - umount $SCRATCH_DEV 2>/dev/null + _scratch_unmount 2>/dev/null exit fi
tests/ext4/303 +1 -1
@@ -140,7 +140,7 @@ _scratch_mkfs >> $seqres.full 2>&1 _scratch_mount if ! _workout; then - umount $SCRATCH_DEV 2>/dev/null + _scratch_unmount 2>/dev/null exit fi
tests/ext4/304 +1 -1
@@ -117,7 +117,7 @@ _scratch_mkfs >> $seqres.full 2>&1 _scratch_mount if ! _workout; then - umount $SCRATCH_DEV 2>/dev/null + _scratch_unmount 2>/dev/null exit fi
tests/ext4/305 +1 -1
@@ -55,7 +55,7 @@ _scratch_mkfs >>$seqres.full 2>&1 while true;do mount $SCRATCH_DEV $SCRATCH_MNT - umount $SCRATCH_DEV + _scratch_unmount done & PIDS=$!
tests/generic/014 +1 -1
@@ -52,7 +52,7 @@ _require_sparse_files # by limiting the amount of preallocation and therefore the amount of blocks # zeroed during the truncfile test run. if [ "$FSTYP" == "xfs" ]; then - umount $TEST_DIR + _test_unmount _test_mount -o allocsize=64k fi
tests/generic/015 +1 -1
@@ -36,7 +36,7 @@ status=1 # success is the default! _cleanup() { - umount $SCRATCH_MNT + _scratch_unmount } trap "_cleanup; exit \$status" 0 1 2 3 15
tests/generic/019 +1 -1
@@ -162,7 +162,7 @@ _workout() wait $fio_pid # We expect that broken FS still can be umounted - run_check umount $SCRATCH_DEV + run_check _scratch_unmount # Once filesystem was umounted no one is able to write to block device # It is now safe to bring device back to normal state stop_fail_scratch_dev
tests/generic/043 +2 -2
@@ -64,9 +64,9 @@ sleep 10 src/godown $SCRATCH_MNT -umount $SCRATCH_MNT +_scratch_unmount _scratch_mount -umount $SCRATCH_MNT +_scratch_unmount if [ ! _check_scratch_fs ] then echo error detected in filesystem
tests/generic/044 +2 -2
@@ -70,9 +70,9 @@ sleep 10 src/godown $SCRATCH_MNT -umount $SCRATCH_MNT +_scratch_unmount _scratch_mount -umount $SCRATCH_MNT +_scratch_unmount if [ ! _check_scratch_fs ] then echo error detected in filesystem
tests/generic/045 +2 -2
@@ -70,9 +70,9 @@ sleep 10 src/godown $SCRATCH_MNT -umount $SCRATCH_MNT +_scratch_unmount _scratch_mount -umount $SCRATCH_MNT +_scratch_unmount if [ ! _check_scratch_fs ] then echo error detected in filesystem
tests/generic/046 +2 -2
@@ -70,9 +70,9 @@ sleep 10 src/godown $SCRATCH_MNT -umount $SCRATCH_MNT +_scratch_unmount _scratch_mount -umount $SCRATCH_MNT +_scratch_unmount if [ ! _check_scratch_fs ] then echo error detected in filesystem
tests/generic/047 +2 -2
@@ -92,9 +92,9 @@ done # shutdown immediately after, then remount and test src/godown $SCRATCH_MNT -umount $SCRATCH_MNT +_scratch_unmount _scratch_mount -umount $SCRATCH_MNT +_scratch_unmount if [ ! _check_scratch_fs ] then echo error detected in filesystem
tests/generic/048 +2 -2
@@ -96,9 +96,9 @@ done # sync, then shutdown immediately after, then remount and test sync src/godown $SCRATCH_MNT -umount $SCRATCH_MNT +_scratch_unmount _scratch_mount -umount $SCRATCH_MNT +_scratch_unmount if [ ! _check_scratch_fs ] then echo error detected in filesystem
tests/generic/049 +2 -2
@@ -93,9 +93,9 @@ done # sync, then shutdown immediately after, then remount and test sync src/godown $SCRATCH_MNT -umount $SCRATCH_MNT +_scratch_unmount _scratch_mount -umount $SCRATCH_MNT +_scratch_unmount if [ ! _check_scratch_fs ] then echo error detected in filesystem
tests/generic/050 +4 -4
@@ -70,7 +70,7 @@ touch $SCRATCH_MNT/foo 2>&1 | _filter_scratch # http://oss.sgi.com/bugzilla/show_bug.cgi?id=807 # echo "unmounting read-only filesystem" -umount $SCRATCH_MNT 2>&1 | _filter_scratch +_scratch_unmount 2>&1 | _filter_scratch echo "setting device read-write" blockdev --setrw $SCRATCH_DEV
@@ -85,7 +85,7 @@ echo "going down:" src/godown -f $SCRATCH_MNT echo "unmounting shutdown filesystem:" -umount $SCRATCH_MNT 2>&1 | _filter_scratch +_scratch_unmount 2>&1 | _filter_scratch echo "setting device read-only" blockdev --setro $SCRATCH_DEV
@@ -98,7 +98,7 @@ echo "mounting filesystem that needs recovery on a read-only device:" _scratch_mount 2>&1 | _filter_scratch | _filter_ro_mount echo "unmounting read-only filesystem" -umount $SCRATCH_MNT 2>&1 | _filter_scratch +_scratch_unmount 2>&1 | _filter_scratch # # This is the way out if the underlying device really is read-only.
@@ -109,7 +109,7 @@ echo "mounting filesystem with -o norecovery on a read-only device:" _scratch_mount -o norecovery 2>&1 | _filter_scratch | _filter_ro_mount echo "unmounting read-only filesystem" -umount $SCRATCH_MNT 2>&1 | _filter_scratch +_scratch_unmount 2>&1 | _filter_scratch echo "setting device read-write" blockdev --setrw $SCRATCH_DEV
tests/generic/051 +5 -5
@@ -39,7 +39,7 @@ status=1 # failure is the default! _cleanup() { cd / - umount $SCRATCH_MNT 2>/dev/null + _scratch_unmount 2>/dev/null rm -f $tmp.* } trap "_cleanup; exit \$status" 0 1 2 3 15
@@ -67,7 +67,7 @@ sleep $SLEEP_TIME killall -q $FSSTRESS_PROG wait sync -umount $SCRATCH_MNT +_scratch_unmount # now mount again, run the load again, this time with a shutdown. _scratch_mount
@@ -84,11 +84,11 @@ wait # for some reason fsstress processes manage to live on beyond the wait? sleep 5 -umount $SCRATCH_MNT +_scratch_unmount # now recover, check the filesystem for consistency _scratch_mount -umount $SCRATCH_MNT +_scratch_unmount _check_scratch_fs # now clean up.
@@ -97,7 +97,7 @@ for d in $load_dir/*; do rm -rf $d > /dev/null 2>&1 & done wait -umount $SCRATCH_MNT +_scratch_unmount echo "No output is good. Failures are loud."
tests/generic/052 +2 -2
@@ -65,7 +65,7 @@ echo "godown" src/godown -v -f $SCRATCH_MNT >> $seqres.full echo "unmount" -umount $SCRATCH_MNT +_scratch_unmount echo "logprint after going down..." _print_logstate
@@ -85,7 +85,7 @@ echo "ls SCRATCH_MNT" ls $SCRATCH_MNT echo "unmount" -umount $SCRATCH_MNT +_scratch_unmount echo "logprint after mount and replay..." _print_logstate
tests/generic/053 +1 -1
@@ -81,7 +81,7 @@ list_acls() echo "acls before repair:" list_acls -_do 'unmount $SCRATCH_DEV' 'umount $SCRATCH_DEV' +_do 'unmount $SCRATCH_DEV' '_scratch_unmount' _do 'repair filesystem' '_check_scratch_fs' _do 'mount filesytem' '_scratch_mount' echo "acls after repair: "
tests/generic/054 +3 -3
@@ -48,7 +48,7 @@ _require_scratch_shutdown _require_logstate echo "*** init FS" -umount $SCRATCH_DEV >/dev/null 2>&1 +_scratch_unmount >/dev/null 2>&1 _get_log_configs > $tmp.seq.params
@@ -108,7 +108,7 @@ for s in sync nosync ; do src/godown -v -f $SCRATCH_MNT >> $seqres.full _echofull "unmount" - umount $SCRATCH_DEV >>$seqres.full 2>&1 \ + _scratch_unmount >>$seqres.full 2>&1 \ || _fail "umount failed" _echofull "logprint after going down..."
@@ -123,7 +123,7 @@ for s in sync nosync ; do ls $SCRATCH_MNT _echofull "unmount" - umount $SCRATCH_MNT + _scratch_unmount _echofull "logprint after mount and replay..." _print_logstate
tests/generic/055 +3 -3
@@ -77,7 +77,7 @@ _require_logstate QUOTA_OPTION=`_get_quota_option` echo "*** init FS" -umount $SCRATCH_DEV >/dev/null 2>&1 +_scratch_unmount >/dev/null 2>&1 _get_log_configs > $tmp.seq.params
@@ -118,7 +118,7 @@ do src/godown -v -f $SCRATCH_MNT >> $seqres.full _echofull "unmount" - umount $SCRATCH_DEV >>$seqres.full 2>&1 \ + _scratch_unmount >>$seqres.full 2>&1 \ || _fail "umount failed" _echofull "logprint after going down..."
@@ -139,7 +139,7 @@ do diff -us $tmp.ls1 $tmp.ls2 | sed "s#$tmp#TMP#g" _echofull "unmount" - umount $SCRATCH_MNT + _scratch_unmount _echofull "logprint after mount and replay..." _print_logstate
tests/generic/058 +0 -0
tests/generic/060 +0 -0
tests/generic/061 +0 -0
tests/generic/062 +1 -1
@@ -40,7 +40,7 @@ _cleanup() { cd / echo; echo "*** unmount" - umount $SCRATCH_MNT 2>/dev/null + _scratch_unmount 2>/dev/null rm -f $tmp.* } trap "_cleanup; exit \$status" 0 1 2 3 15
tests/generic/063 +0 -0
tests/generic/064 +0 -0
tests/generic/068 +1 -1
@@ -57,7 +57,7 @@ _require_freeze echo "*** init FS" rm -f $seqres.full -umount $SCRATCH_DEV >/dev/null 2>&1 +_scratch_unmount >/dev/null 2>&1 echo "*** MKFS ***" >>$seqres.full echo "" >>$seqres.full _scratch_mkfs >>$seqres.full 2>&1 \
tests/generic/069 +1 -1
@@ -42,7 +42,7 @@ _supported_os IRIX Linux _require_scratch rm -f $seqres.full -umount $SCRATCH_DEV >/dev/null 2>&1 +_scratch_unmount >/dev/null 2>&1 echo "*** mkfs" _scratch_mkfs >/dev/null 2>&1 || _fail "mkfs failed"
tests/generic/076 +2 -2
@@ -42,7 +42,7 @@ _lets_get_pidst() _cleanup() { echo "*** unmount" - umount $SCRATCH_MNT 2>/dev/null + _scratch_unmount 2>/dev/null _lets_get_pidst } trap "_cleanup; rm -f $tmp.*; exit \$status" 0 1 2 3 15
@@ -61,7 +61,7 @@ _require_block_device $SCRATCH_DEV echo "*** init fs" rm -f $seqres.full -umount $SCRATCH_DEV >/dev/null 2>&1 +_scratch_unmount >/dev/null 2>&1 echo "*** MKFS ***" >>$seqres.full echo "" >>$seqres.full _scratch_mkfs >>$seqres.full 2>&1 \
tests/generic/077 +2 -2
@@ -39,7 +39,7 @@ _cleanup() { cd / echo "*** unmount" - umount $SCRATCH_MNT 2>/dev/null + _scratch_unmount 2>/dev/null } trap "_cleanup; rm -f $tmp.*; exit \$status" 0 1 2 3 15
@@ -61,7 +61,7 @@ _require_user echo "*** create filesystem" rm -f $seqres.full -umount $SCRATCH_DEV >/dev/null 2>&1 +_scratch_unmount >/dev/null 2>&1 echo "*** MKFS ***" >>$seqres.full echo "" >>$seqres.full SIZE=`expr 50 \* 1024 \* 1024`
tests/generic/079 +1 -1
@@ -37,7 +37,7 @@ _cleanup() cd / echo "*** cleaning up" $timmutable -r $SCRATCH_MNT/$seq - umount $SCRATCH_MNT + _scratch_unmount } # get standard environment, filters and checks
tests/generic/083 +2 -2
@@ -42,7 +42,7 @@ status=1 _cleanup() { echo "*** unmount" - umount $SCRATCH_MNT 2>/dev/null + _scratch_unmount 2>/dev/null rm -f $tmp.* } trap "_cleanup; exit \$status" 0 1 2 3 15
@@ -67,7 +67,7 @@ workout() procs=$3 nops=$4 - umount $SCRATCH_DEV >/dev/null 2>&1 + _scratch_unmount >/dev/null 2>&1 echo "*** mkfs -dsize=$fsz,agcount=$ags" >>$seqres.full echo "" >>$seqres.full if [ $FSTYP = xfs ]
tests/generic/105 +1 -1
@@ -57,7 +57,7 @@ _require_acls _acl_setup_ids -umount $SCRATCH_DEV >/dev/null 2>&1 +_scratch_unmount >/dev/null 2>&1 echo "*** MKFS ***" >>$seqres.full echo "" >>$seqres.full _scratch_mkfs >>$seqres.full 2>&1 \
tests/generic/117 +2 -2
@@ -82,7 +82,7 @@ _require_scratch _require_attrs rm -f $seqres.full -umount $SCRATCH_DEV >/dev/null 2>&1 +_scratch_unmount >/dev/null 2>&1 echo "*** MKFS ***" >>$seqres.full echo "" >>$seqres.full _scratch_mkfs >>$seqres.full 2>&1 \
@@ -105,7 +105,7 @@ while [ $i -lt $ITERATIONS ]; do done cd / -umount $SCRATCH_MNT +_scratch_unmount echo echo Checking filesystem
tests/generic/120 +1 -1
@@ -92,7 +92,7 @@ echo "*** writing to file ***" echo "asdf" >> $SCRATCH_MNT/testfile2 _compare_access_times $SCRATCH_MNT/testfile2 "writing file" -umount $SCRATCH_MNT +_scratch_unmount # success, all done status=0
tests/generic/124 +1 -1
@@ -75,6 +75,6 @@ if (test $? -eq 0 ) then status=0 fi -umount $SCRATCH_DEV +_scratch_unmount exit
tests/generic/128 +1 -1
@@ -54,7 +54,7 @@ su -s/bin/bash - $qa_user -c "$SCRATCH_MNT/ls $SCRATCH_MNT/nosuid >/dev/null 2>& if [ $? -eq 0 ] ; then echo "Error: we shouldn't be able to ls the directory" fi -umount $SCRATCH_DEV +_scratch_unmount status=0 exit
tests/generic/135 +1 -1
@@ -48,7 +48,7 @@ _umount_mount() CWD=`pwd` cd / # pipe error into /dev/null, in case not mounted (after _require_scratch) - umount $SCRATCH_MNT 2>/dev/null + _scratch_unmount 2>/dev/null _scratch_mount cd "$CWD" }
tests/generic/169 +2 -2
@@ -74,7 +74,7 @@ $XFS_IO_PROG -a -c "pwrite 0 5k" -c "fsync" \ | _show_wrote_and_stat_only echo "# unmounting scratch" -umount $SCRATCH_MNT>>$seqres.full 2>&1 \ +_scratch_unmount>>$seqres.full 2>&1 \ || _fail "unmount failed" echo "# mounting scratch"
@@ -91,7 +91,7 @@ $XFS_IO_PROG -f -c "pwrite 0 5" -c s -c "pwrite 5 5" \ | _show_wrote_and_stat_only echo "# unmounting scratch" -umount $SCRATCH_MNT>>$seqres.full 2>&1 \ +_scratch_unmount>>$seqres.full 2>&1 \ || _fail "unmount failed" echo "# mounting scratch"
tests/generic/192 +1 -1
@@ -78,7 +78,7 @@ cat $testfile time2=`_access_time $testfile | tee -a $seqres.full` cd / -umount $TEST_DIR +_test_unmount _test_mount time3=`_access_time $testfile | tee -a $seqres.full`
tests/generic/219 +4 -4
@@ -106,12 +106,12 @@ test_accounting() # real QA test starts here rm -f $seqres.full -umount $SCRATCH_DEV 2>/dev/null +_scratch_unmount 2>/dev/null _scratch_mkfs >> $seqres.full 2>&1 _scratch_mount "-o usrquota,grpquota" quotacheck -u -g $SCRATCH_MNT 2>/dev/null quotaon $SCRATCH_MNT 2>/dev/null -umount $SCRATCH_DEV +_scratch_unmount echo; echo "### test user accounting" export MOUNT_OPTIONS="-o usrquota"
@@ -120,7 +120,7 @@ quotaon $SCRATCH_MNT 2>/dev/null type=u test_files test_accounting -umount $SCRATCH_DEV 2>/dev/null +_scratch_unmount 2>/dev/null echo; echo "### test group accounting" export MOUNT_OPTIONS="-o grpquota"
@@ -129,7 +129,7 @@ quotaon $SCRATCH_MNT 2>/dev/null type=g test_files test_accounting -umount $SCRATCH_DEV 2>/dev/null +_scratch_unmount 2>/dev/null status=0 exit
tests/generic/226 +3 -3
@@ -42,7 +42,7 @@ _require_odirect # real QA test starts here rm -f $seqres.full -umount $SCRATCH_DEV 2>/dev/null +_scratch_unmount 2>/dev/null echo "--> mkfs 256m filesystem" _scratch_mkfs_sized `expr 256 \* 1024 \* 1024` >> $seqres.full 2>&1 _scratch_mount
@@ -61,7 +61,7 @@ for I in `seq 1 $loops`; do done echo -umount $SCRATCH_DEV +_scratch_unmount _scratch_mount echo "--> $loops direct 64m writes in a loop"
@@ -73,7 +73,7 @@ for I in `seq 1 $loops`; do done echo -umount $SCRATCH_DEV +_scratch_unmount status=0 exit
tests/generic/230 +3 -3
@@ -122,7 +122,7 @@ setquota -u $qa_user 1000 2000 3 5 $SCRATCH_MNT setquota -u -t $grace $grace $SCRATCH_MNT setquota -g $qa_user 1000 2000 3 5 $SCRATCH_MNT setquota -g -t $grace $grace $SCRATCH_MNT -umount $SCRATCH_DEV +_scratch_unmount echo; echo "### test user limit enforcement" _scratch_mount "-o usrquota"
@@ -131,7 +131,7 @@ type=u test_files test_enforcement cleanup_files -umount $SCRATCH_DEV 2>/dev/null +_scratch_unmount 2>/dev/null echo; echo "### test group limit enforcement" _scratch_mount "-o grpquota"
@@ -140,7 +140,7 @@ type=g test_files test_enforcement cleanup_files -umount $SCRATCH_DEV 2>/dev/null +_scratch_unmount 2>/dev/null status=0 exit
tests/generic/231 +7 -7
@@ -78,25 +78,25 @@ quotacheck -u -g $SCRATCH_MNT 2>/dev/null quotaon -u -g $SCRATCH_MNT 2>/dev/null if ! _fsx 1; then - umount $SCRATCH_DEV 2>/dev/null + _scratch_unmount 2>/dev/null status=1 exit fi if ! _check_quota_usage; then - umount $SCRATCH_DEV 2>/dev/null + _scratch_unmount 2>/dev/null status=1 exit fi if ! _fsx 4; then - umount $SCRATCH_DEV 2>/dev/null + _scratch_unmount 2>/dev/null status=1 exit fi if ! _check_quota_usage; then - umount $SCRATCH_DEV 2>/dev/null + _scratch_unmount 2>/dev/null status=1 exit fi
@@ -104,17 +104,17 @@ fi #flush cache after write FSX_ARGS="-f $FSX_ARGS" if ! _fsx 1; then - umount $SCRATCH_DEV 2>/dev/null + _scratch_unmount 2>/dev/null status=1 exit fi if ! _check_quota_usage; then - umount $SCRATCH_DEV 2>/dev/null + _scratch_unmount 2>/dev/null status=1 exit fi -umount $SCRATCH_DEV 2>/dev/null +_scratch_unmount 2>/dev/null status=0 exit
tests/generic/232 +3 -3
@@ -78,16 +78,16 @@ quotacheck -u -g $SCRATCH_MNT 2>/dev/null quotaon -u -g $SCRATCH_MNT 2>/dev/null if ! _fsstress; then - umount $SCRATCH_DEV 2>/dev/null + _scratch_unmount 2>/dev/null exit fi if ! _check_quota_usage; then - umount $SCRATCH_DEV 2>/dev/null + _scratch_unmount 2>/dev/null status=1 exit fi -umount $SCRATCH_DEV 2>/dev/null +_scratch_unmount 2>/dev/null status=0 exit
tests/generic/233 +3 -3
@@ -87,16 +87,16 @@ quotaon -u -g $SCRATCH_MNT 2>/dev/null setquota -u $qa_user 32000 32000 1000 1000 $SCRATCH_MNT 2>/dev/null if ! _fsstress; then - umount $SCRATCH_DEV 2>/dev/null + _scratch_unmount 2>/dev/null exit fi if ! _check_quota_usage; then - umount $SCRATCH_DEV 2>/dev/null + _scratch_unmount 2>/dev/null status=1 exit fi -umount $SCRATCH_DEV 2>/dev/null +_scratch_unmount 2>/dev/null status=0 exit
tests/generic/234 +1 -1
@@ -101,7 +101,7 @@ _scratch_mount "-o usrquota,grpquota" quotacheck -u -g $SCRATCH_MNT 2>/dev/null quotaon -u -g $SCRATCH_MNT 2>/dev/null test_setting -umount $SCRATCH_DEV +_scratch_unmount status=0 exit
tests/generic/235 +1 -1
@@ -73,7 +73,7 @@ $XFS_IO_PROG -c 'pwrite 0 8k' -c 'fsync' \ $SCRATCH_MNT/testfile >>$seqres.full 2>&1 repquota -u -g $SCRATCH_MNT | grep -v "^root" | _filter_scratch -umount $SCRATCH_DEV 2>/dev/null +_scratch_unmount 2>/dev/null status=0 exit
tests/generic/256 +1 -1
@@ -165,7 +165,7 @@ _test_full_fs_punch() } # Make a small file system to fill -umount $SCRATCH_DEV &> /dev/null +_scratch_unmount &> /dev/null _scratch_mkfs_sized $(( 1536 * 1024 * 1024 )) &> /dev/null _scratch_mount # Test must be able to write files with non-root permissions
tests/generic/258 +1 -1
@@ -62,7 +62,7 @@ fi # unmount, remount, and check the timestamp echo "Remounting to flush cache" -umount $TEST_DEV +_test_unmount _test_mount # Should yield -315593940 (prior to epoch)
tests/generic/269 +1 -1
@@ -70,7 +70,7 @@ _scratch_mkfs_sized $((512 * 1024 * 1024)) >> $seqres.full 2>&1 _scratch_mount if ! _workout; then - umount $SCRATCH_DEV 2>/dev/null + _scratch_unmount 2>/dev/null exit fi
tests/generic/274 +1 -1
@@ -56,7 +56,7 @@ echo "------------------------------" rm -f $seqres.full -umount $SCRATCH_DEV 2>/dev/null +_scratch_unmount 2>/dev/null _scratch_mkfs_sized $((2 * 1024 * 1024 * 1024)) >>$seqres.full 2>&1 _scratch_mount
tests/generic/275 +1 -1
@@ -53,7 +53,7 @@ echo "------------------------------" rm -f $seqres.full -umount $SCRATCH_DEV 2>/dev/null +_scratch_unmount 2>/dev/null _scratch_mkfs_sized $((2 * 1024 * 1024 * 1024)) >>$seqres.full 2>&1 _scratch_mount
tests/generic/280 +2 -2
@@ -54,7 +54,7 @@ _supported_fs generic rm -f $seqres.full -umount $SCRATCH_DEV 2>/dev/null +_scratch_unmount 2>/dev/null _scratch_mkfs >> $seqres.full 2>&1 _scratch_mount "-o usrquota,grpquota" quotacheck -u -g $SCRATCH_MNT 2>/dev/null
@@ -65,7 +65,7 @@ pid=$! sleep 1 xfs_freeze -u $SCRATCH_MNT wait $pid -umount $SCRATCH_DEV +_scratch_unmount # Failure comes in the form of a deadlock.
tests/generic/299 +1 -1
@@ -148,7 +148,7 @@ _scratch_mkfs >> $seqres.full 2>&1 _scratch_mount if ! _workout; then - umount $SCRATCH_DEV 2>/dev/null + _scratch_unmount 2>/dev/null exit fi
tests/generic/300 +1 -1
@@ -147,7 +147,7 @@ _scratch_mkfs_sized $FS_SIZE >> $seqres.full 2>&1 _scratch_mount if ! _workout; then - umount $SCRATCH_DEV 2>/dev/null + _scratch_unmount 2>/dev/null exit fi
tests/generic/317 +4 -4
@@ -37,7 +37,7 @@ status=1 # failure is the default! _cleanup() { cd / - umount $SCRATCH_DEV >/dev/null 2>&1 + _scratch_unmount >/dev/null 2>&1 } trap "_cleanup; exit \$status" 0 1 2 3 15
@@ -80,7 +80,7 @@ _print_numeric_uid() src/nsexec -s -U -M "0 $qa_user_id 1000" -G "0 $qa_user_id 1000" src/lstat64 $file |head -3 |_filter_output } -umount $SCRATCH_DEV >/dev/null 2>&1 +_scratch_unmount >/dev/null 2>&1 echo "*** MKFS ***" >>$seqres.full echo "" >>$seqres.full _scratch_mkfs >>$seqres.full 2>&1 || _fail "mkfs failed"
@@ -96,11 +96,11 @@ echo "" echo "*** Remounting ***" echo "" sync -umount $SCRATCH_MNT >>$seqres.full 2>&1 +_scratch_unmount >>$seqres.full 2>&1 _scratch_mount >>$seqres.full 2>&1 || _fail "mount failed" _print_numeric_uid -umount $SCRATCH_DEV >/dev/null 2>&1 +_scratch_unmount >/dev/null 2>&1 status=0 exit
tests/generic/318 +4 -4
@@ -38,7 +38,7 @@ status=1 # failure is the default! _cleanup() { cd / - umount $SCRATCH_DEV >/dev/null 2>&1 + _scratch_unmount >/dev/null 2>&1 } trap "_cleanup; exit \$status" 0 1 2 3 15
@@ -90,7 +90,7 @@ _print_getfacls() $nsexec -U -M "0 $acl1 1000" -G "0 $acl1 1000" getfacl --absolute-names -n $file 2>/dev/null | _filter_scratch | _getfacl_filter_nsid } -umount $SCRATCH_DEV >/dev/null 2>&1 +_scratch_unmount >/dev/null 2>&1 echo "*** MKFS ***" >>$seqres.full echo "" >>$seqres.full _scratch_mkfs >>$seqres.full 2>&1 || _fail "mkfs failed"
@@ -109,11 +109,11 @@ _print_getfacls echo "*** Remounting ***" echo "" sync -umount $SCRATCH_MNT >>$seqres.full 2>&1 +_scratch_unmount >>$seqres.full 2>&1 _scratch_mount >>$seqres.full 2>&1 || _fail "mount failed" _print_getfacls -umount $SCRATCH_DEV >/dev/null 2>&1 +_scratch_unmount >/dev/null 2>&1 status=0 exit
tests/shared/289 +2 -2
@@ -89,11 +89,11 @@ OVERHEAD=$(($TOTAL_BLOCKS-$FREE_BLOCKS-$JOURNAL_BLOCKS)) _scratch_mount "-o minixdf" MINIX_F_BLOCKS=`stat -f $SCRATCH_MNT | awk '/^Blocks/{print $3}'` -umount $SCRATCH_MNT +_scratch_unmount _scratch_mount "-o bsddf" BSD_F_BLOCKS=`stat -f $SCRATCH_MNT | awk '/^Blocks/{print $3}'` -umount $SCRATCH_MNT +_scratch_unmount # Echo data to $seqres.full for analysis echo "Overhead is $OVERHEAD blocks out of $TOTAL_BLOCKS ($FREE_BLOCKS free)" >> $seqres.full
tests/udf/098 +3 -3
@@ -66,7 +66,7 @@ _db_filter() _umount_check_mount() { cd / - umount $SCRATCH_MNT + _scratch_unmount udf_db -f $SCRATCH_DEV | _db_filter
@@ -244,7 +244,7 @@ echo "list root EAs: none" ${ATTR_PROG} -R -l foo cd / -umount $SCRATCH_MNT +_scratch_unmount udf_db -f $SCRATCH_DEV | _db_filter
@@ -258,7 +258,7 @@ echo "delete the file foo - which will delete the associated streams" rm foo cd / -umount $SCRATCH_MNT +_scratch_unmount udf_db -f $SCRATCH_DEV | _db_filter
tests/udf/101 +1 -1
@@ -49,7 +49,7 @@ MKFS_OPTIONS="-s $FS_SIZE" _require_scratch _setup_udf_scratchdir -umount $SCRATCH_MNT +_scratch_unmount # Inspect the space bitmap echo bitmap | udf_db -c - $SCRATCH_DEV
tests/xfs/004 +2 -2
@@ -32,7 +32,7 @@ status=0 _cleanup() { - umount $SCRATCH_MNT + _scratch_unmount rm -f $tmp.* exit $status }
@@ -48,7 +48,7 @@ _populate_scratch() dd if=/dev/zero of=$SCRATCH_MNT/goo count=400 bs=4096 >/dev/null 2>&1 & dd if=/dev/zero of=$SCRATCH_MNT/moo count=800 bs=4096 >/dev/null 2>&1 & wait - umount $SCRATCH_MNT # flush everything + _scratch_unmount # flush everything _scratch_mount # and then remount }
tests/xfs/006 +1 -1
@@ -54,7 +54,7 @@ _scratch_mount | _filter_scratch mkdir $SCRATCH_MNT/x $here/src/dirhash_collide -d -n 10000 $SCRATCH_MNT/x -umount $SCRATCH_MNT 2>&1 | _filter_scratch +_scratch_unmount 2>&1 | _filter_scratch _scratch_xfs_repair 2>&1 | _filter_repair
tests/xfs/007 +2 -2
@@ -59,7 +59,7 @@ do_test() off_opts=$3 echo "*** umount" - umount $SCRATCH_MNT + _scratch_unmount QINO_1=`xfs_db -c "sb 0" -c "p" $SCRATCH_DEV | \ grep $qino_1 | awk '{print $NF}'`
@@ -75,7 +75,7 @@ do_test() xfs_quota -x -c "off -$off_opts" $SCRATCH_MNT xfs_quota -x -c "remove -$off_opts" $SCRATCH_MNT echo "*** umount" - umount $SCRATCH_MNT + _scratch_unmount echo "*** Usage after quotarm ***" xfs_db -c "inode $QINO_1" -c "p core.nblocks" $SCRATCH_DEV
tests/xfs/009 +1 -1
@@ -37,7 +37,7 @@ bsize=4096 _cleanup() { echo "*** unmount" - umount $SCRATCH_MNT + _scratch_unmount } _block_filter()
tests/xfs/010 +2 -2
@@ -40,7 +40,7 @@ status=1 # failure is the default! _cleanup() { cd / - umount $SCRATCH_MNT 2>/dev/null + _scratch_unmount 2>/dev/null rm -f $tmp.* } trap "_cleanup; exit \$status" 0 1 2 3 15
@@ -114,7 +114,7 @@ _scratch_mkfs_xfs "-m crc=1,finobt=1 -d agcount=2" | _filter_mkfs 2>$seqres.full # sparsely populate the fs such that we create records with free inodes _scratch_mount _sparse_inode_populate $SCRATCH_MNT 999 -umount $SCRATCH_MNT +_scratch_unmount # corrupt some finobt records _corrupt_finobt_records $SCRATCH_DEV
tests/xfs/011 +2 -2
@@ -40,7 +40,7 @@ _cleanup() killall -9 fsstress 2>/dev/null wait cd / - umount $SCRATCH_MNT 2>/dev/null + _scratch_unmount 2>/dev/null rm -f $tmp.* } trap "_cleanup; exit \$status" 0 1 2 3 15
@@ -109,7 +109,7 @@ done killall $FSSTRESS_PROG wait -umount $SCRATCH_MNT +_scratch_unmount status=0 exit
tests/xfs/013 +2 -2
@@ -43,7 +43,7 @@ _cleanup() killall -9 fsstress 2>/dev/null wait cd / - umount $SCRATCH_MNT 2>/dev/null + _scratch_unmount 2>/dev/null rm -f $tmp.* } trap "_cleanup; exit \$status" 0 1 2 3 15
@@ -149,7 +149,7 @@ wait rm -rf $SCRATCH_MNT/fsstress rm -rf $SCRATCH_MNT/dir* -umount $SCRATCH_MNT +_scratch_unmount status=0 exit
tests/xfs/014 +2 -2
@@ -44,7 +44,7 @@ _cleanup() { cd / umount $LOOP_MNT 2>/dev/null - umount $SCRATCH_MNT 2>/dev/null + _scratch_unmount 2>/dev/null rm -f $tmp.* } trap "_cleanup; exit \$status" 0 1 2 3 15
@@ -193,7 +193,7 @@ umount $LOOP_MNT echo $orig_sp_time > /proc/sys/fs/xfs/speculative_prealloc_lifetime -umount $SCRATCH_MNT +_scratch_unmount status=0 exit
tests/xfs/016 +2 -2
@@ -50,7 +50,7 @@ _cleanup() cd / rm -f $tmp.* echo "*** unmount" - umount $SCRATCH_MNT 2>/dev/null + _scratch_unmount 2>/dev/null } _block_filter()
@@ -116,7 +116,7 @@ _log_traffic() done echo " *** unmount" - if ! umount $SCRATCH_DEV + if ! _scratch_unmount then echo "failed to unmount $SCRATCH_DEV" exit 1
tests/xfs/017 +2 -2
@@ -34,7 +34,7 @@ trap "_cleanup; rm -f $tmp.*; exit \$status" 0 1 2 3 15 _cleanup() { echo "*** unmount" - umount $SCRATCH_MNT 2>/dev/null + _scratch_unmount 2>/dev/null } # get standard environment, filters and checks
@@ -54,7 +54,7 @@ _require_no_large_scratch_dev echo "*** init FS" rm -f $seqres.full -umount $SCRATCH_DEV >/dev/null 2>&1 +_scratch_unmount >/dev/null 2>&1 echo "*** MKFS ***" >>$seqres.full echo "" >>$seqres.full _scratch_mkfs_xfs >>$seqres.full 2>&1 \
tests/xfs/018 +2 -2
@@ -41,7 +41,7 @@ _cleanup() cd / _cleanup_logfiles rm -f $tmp.* - umount $SCRATCH_MNT 2>/dev/null + _scratch_unmount 2>/dev/null } trap "_cleanup; exit \$status" 0 1 2 3 15
@@ -57,7 +57,7 @@ _require_v2log _link_out_file $seq.op $seqfull.op echo "*** init FS" -umount $SCRATCH_DEV >/dev/null 2>&1 +_scratch_unmount >/dev/null 2>&1 cat >$tmp.seq.params <<EOF # mkfs-opt mount-opt
tests/xfs/019 +3 -3
@@ -37,7 +37,7 @@ status=1 # failure is the default! _cleanup() { echo "*** unmount" - umount $SCRATCH_MNT 2>/dev/null + _scratch_unmount 2>/dev/null rm -f $tmp.* } trap "_cleanup; exit \$status" 0 1 2 3 15
@@ -111,7 +111,7 @@ _verify_fs() VERSION="-n version=$1" rm -f $seqfull - umount $SCRATCH_DEV >/dev/null 2>&1 + _scratch_unmount >/dev/null 2>&1 _full "mkfs" _scratch_mkfs_xfs $VERSION -p $protofile >>$seqfull 2>&1 \
@@ -134,7 +134,7 @@ _verify_fs() echo "*** unmount FS" _full "umount" - umount $SCRATCH_DEV >>$seqfull 2>&1 \ + _scratch_unmount >>$seqfull 2>&1 \ || _fail "umount failed" }
tests/xfs/021 +3 -3
@@ -37,7 +37,7 @@ status=0 # success is the default! _cleanup() { echo "*** unmount" - umount $SCRATCH_MNT 2>/dev/null + _scratch_unmount 2>/dev/null rm -f $tmp.* } trap "_cleanup; exit \$status" 0 1 2 3 15
@@ -80,7 +80,7 @@ _require_scratch _require_attrs rm -f $seqres.full -umount $SCRATCH_DEV >/dev/null 2>&1 +_scratch_unmount >/dev/null 2>&1 echo "*** mkfs" _scratch_mkfs_xfs >/dev/null \
@@ -125,7 +125,7 @@ echo "" inum_2=`ls -li $testfile.2 | $AWK_PROG '{ print $1 }'` echo "*** unmount FS" -umount $SCRATCH_DEV >>$seqres.full 2>&1 \ +_scratch_unmount >>$seqres.full 2>&1 \ || _fail "umount failed" echo "*** dump attributes (1)"
tests/xfs/030 +2 -2
@@ -34,7 +34,7 @@ status=1 # failure is the default! _cleanup() { cd / - umount $SCRATCH_DEV 2>/dev/null + _scratch_unmount 2>/dev/null rm -f $tmp.* }
@@ -87,7 +87,7 @@ else _notrun "GQuota are enabled, test needs controlled sb recovery" src/feature -P $SCRATCH_DEV && \ _notrun "PQuota are enabled, test needs controlled sb recovery" - umount $SCRATCH_DEV + _scratch_unmount fi clear="" eval `xfs_db -r -c "sb 1" -c stack $SCRATCH_DEV | perl -ne '
tests/xfs/033 +2 -2
@@ -34,7 +34,7 @@ status=1 # failure is the default! _cleanup() { cd / - umount $SCRATCH_DEV 2>/dev/null + _scratch_unmount 2>/dev/null rm -f $tmp.* }
@@ -101,7 +101,7 @@ src/feature -G $SCRATCH_DEV && \ _notrun "GQuota are enabled, test needs controlled sb recovery" src/feature -P $SCRATCH_DEV && \ _notrun "PQuota are enabled, test needs controlled sb recovery" -umount $SCRATCH_DEV +_scratch_unmount # rootino, rbmino, and rsumino are now set (lets blow em away!) _check_root_inos 0
tests/xfs/034 +2 -2
@@ -35,7 +35,7 @@ _cleanup() cd / rm -f $tmp.* echo "*** unmount" - umount $SCRATCH_MNT 2>/dev/null + _scratch_unmount 2>/dev/null } trap "_cleanup; exit \$status" 0 1 2 3 15
@@ -52,7 +52,7 @@ _require_scratch echo "*** init FS" rm -f $seqres.full -umount $SCRATCH_DEV >/dev/null 2>&1 +_scratch_unmount >/dev/null 2>&1 echo "*** MKFS ***" >>$seqres.full echo "" >>$seqres.full _scratch_mkfs_xfs >>$seqres.full 2>&1 \
tests/xfs/041 +3 -3
@@ -35,7 +35,7 @@ status=1 # failure is the default! _cleanup() { cd / - umount $SCRATCH_MNT + _scratch_unmount rm -f $tmp.* } trap "_cleanup ; exit \$status" 0 1 2 3 15
@@ -50,7 +50,7 @@ _supported_os IRIX Linux _require_scratch _require_no_large_scratch_dev -umount $SCRATCH_DEV 2>/dev/null +_scratch_unmount 2>/dev/null _fill() {
@@ -80,7 +80,7 @@ do _fill $SCRATCH_MNT/fill_$size _do "Grow filesystem to ${size}m" "xfs_growfs -D $grow_size $SCRATCH_MNT" echo -n "Flush filesystem... " - _do "umount $SCRATCH_MNT" + _do "_scratch_unmount" _do "_scratch_mount" echo "done" echo -n "Check files... "
tests/xfs/042 +2 -2
@@ -35,7 +35,7 @@ status=1 # failure is the default! _cleanup() { - umount $SCRATCH_MNT + _scratch_unmount rm -f $tmp.* } trap "_cleanup ; exit \$status" 0 1 2 3 15
@@ -114,7 +114,7 @@ done _do "xfs_bmap -vp $SCRATCH_MNT/fill" echo "done" # flush the filesystem - make sure there is no space "lost" to pre-allocation -_do "umount $SCRATCH_MNT" +_do "_scratch_unmount" _do "_scratch_mount" echo -n "Use up any further available space using dd... " _do "dd if=/dev/zero of=$SCRATCH_MNT/pad bs=4096"
tests/xfs/044 +1 -1
@@ -68,7 +68,7 @@ _check_mount() fi echo " *** umount" - if ! umount $SCRATCH_DEV + if ! _scratch_unmount then echo " !!! umount failed (expecting success)" status=1
tests/xfs/050 +2 -2
@@ -39,7 +39,7 @@ status=1 # failure is the default! _cleanup() { cd / - umount $SCRATCH_MNT 2>/dev/null + _scratch_unmount 2>/dev/null rm -f $tmp.* } trap "_cleanup; exit \$status" 0 1 2 3 15
@@ -197,7 +197,7 @@ _exercise() echo echo "*** unmount" - umount $SCRATCH_MNT + _scratch_unmount }
tests/xfs/052 +2 -2
@@ -41,7 +41,7 @@ status=1 # failure is the default! _cleanup() { cd / - umount $SCRATCH_MNT 2>/dev/null + _scratch_unmount 2>/dev/null rm -f $tmp.* } trap "_cleanup; exit \$status" 0 1 2 3 15
@@ -107,7 +107,7 @@ echo ===quota output >> $seqres.full cat $tmp.quota >> $seqres.full [ ! -s $tmp.quota ] && echo "warning: quota output file is empty" -umount $SCRATCH_MNT +_scratch_unmount # note - does (insitu) conversion from fs blocks to 1K blocks xfs_db -rc "dquot -$type $id" -c p $SCRATCH_DEV | tee -a $seqres.full | perl -ne '
tests/xfs/054 +3 -3
@@ -38,7 +38,7 @@ status=1 # failure is the default! _cleanup() { - umount $SCRATCH_MNT 2>/dev/null + _scratch_unmount 2>/dev/null rm -f $tmp.* } trap "_cleanup; exit \$status" 0 1 2 3 15
@@ -96,7 +96,7 @@ _exercise() src/lstat64 $SCRATCH_MNT/testfile | _filter_stat echo - umount $SCRATCH_MNT 2>/dev/null + _scratch_unmount 2>/dev/null } _scratch_mkfs_xfs >> $seqres.full 2>&1 || _fail "mkfs failed!"
@@ -108,7 +108,7 @@ if src/feature -G $SCRATCH_DEV ; then else _notrun "No quota support at mount time" fi -umount $SCRATCH_MNT 2>/dev/null +_scratch_unmount 2>/dev/null _qmount_option "rw" # no quota options echo "*** Default mount options"
tests/xfs/065 +2 -2
@@ -64,7 +64,7 @@ _supported_os IRIX Linux # too much hassle to get output matching with quotas turned on # so don't run it # -umount $SCRATCH_DEV 2>/dev/null +_scratch_unmount 2>/dev/null _scratch_mount $here/src/feature -U $SCRATCH_DEV && \ _notrun "UQuota enabled, test needs controlled xfsdump output"
@@ -72,7 +72,7 @@ $here/src/feature -G $SCRATCH_DEV && \ _notrun "GQuota enabled, test needs controlled xfsdump output" $here/src/feature -P $SCRATCH_DEV && \ _notrun "PQuota enabled, test needs controlled xfsdump output" -umount $SCRATCH_DEV +_scratch_unmount # # adding - touch/echo, mkdir
tests/xfs/071 +1 -1
@@ -35,7 +35,7 @@ _cleanup() { cd / rm -f $tmp.* - umount $SCRATCH_DEV 2>/dev/null + _scratch_unmount 2>/dev/null } trap "_cleanup; exit \$status" 0 1 2 3 15
tests/xfs/072 +2 -2
@@ -30,7 +30,7 @@ _cleanup() { cd / rm -f $tmp.* - umount $SCRATCH_MNT 2>/dev/null + _scratch_unmount 2>/dev/null } here=`pwd`
@@ -51,7 +51,7 @@ _supported_os IRIX Linux _require_scratch rm -f $seqres.full -umount $SCRATCH_DEV >/dev/null 2>&1 +_scratch_unmount >/dev/null 2>&1 _scratch_mkfs_xfs >/dev/null || _fail "mkfs failed" _scratch_mount >/dev/null || _fail "mount failed"
tests/xfs/073 +2 -2
@@ -40,7 +40,7 @@ imgs=$TEST_DIR/$$ _cleanup() { cd / - umount $SCRATCH_MNT 2>/dev/null + _scratch_unmount 2>/dev/null umount -d $imgs.loop 2>/dev/null [ -d $imgs.loop ] && rmdir $imgs.loop umount -d $imgs.source_dir 2>/dev/null
@@ -142,7 +142,7 @@ _scratch_mount 2>/dev/null || _fail "initial scratch mount failed" echo echo === populating scratch device _populate_scratch -umount $SCRATCH_MNT 2>/dev/null +_scratch_unmount 2>/dev/null echo echo === copying scratch device to single target
tests/xfs/081 +3 -3
@@ -46,7 +46,7 @@ _cleanup() _cleanup_logfiles rm -f $tmp.* echo "*** unmount" - umount $SCRATCH_MNT 2>/dev/null + _scratch_unmount 2>/dev/null } trap "_cleanup; exit \$status" 0 1 2 3 15
@@ -57,7 +57,7 @@ _require_xfs_quota _require_v2log echo "*** init FS" -umount $SCRATCH_DEV >/dev/null 2>&1 +_scratch_unmount >/dev/null 2>&1 # do a simple quota test to ensure DQUOT data is happening export MOUNT_OPTIONS="-o quota,gquota"
@@ -72,7 +72,7 @@ fi _scratch_mkfs_xfs "-l version=1" 1>/dev/null 2>&1 _qmount src/feature -u $SCRATCH_DEV || _notrun "No quota support at mount time" -umount $SCRATCH_MNT +_scratch_unmount _mkfs_log "-l version=1" _create_log
tests/xfs/082 +2 -2
@@ -41,7 +41,7 @@ _cleanup() cd / _cleanup_logfiles rm -f $tmp.* - umount $SCRATCH_MNT 2>/dev/null + _scratch_unmount 2>/dev/null } trap "_cleanup; exit \$status" 0 1 2 3 15
@@ -58,7 +58,7 @@ _require_v2log _link_out_file $seq.op $seqfull.op echo "*** init FS" -umount $SCRATCH_DEV >/dev/null 2>&1 +_scratch_unmount >/dev/null 2>&1 cat >$tmp.seq.params <<EOF # mkfs-opt mount-opt start-blk
tests/xfs/104 +1 -1
@@ -112,7 +112,7 @@ while [ $size -le $endsize ]; do done wait # stop for any remaining stress processes -umount $SCRATCH_DEV +_scratch_unmount status=0 exit
tests/xfs/106 +1 -1
@@ -233,6 +233,6 @@ type=p id=$prid test_xfs_quota | filter_xfs_quota -umount $SCRATCH_DEV +_scratch_unmount status=0 exit
tests/xfs/108 +5 -5
@@ -82,7 +82,7 @@ _require_prjquota $SCRATCH_DEV # real QA test starts here rm -f $tmp.projects $seqres.full -umount $SCRATCH_DEV 2>/dev/null +_scratch_unmount 2>/dev/null _scratch_mkfs_xfs | _filter_mkfs 2>$tmp.mkfs cat $tmp.mkfs >>$seqres.full _scratch_mount
@@ -91,7 +91,7 @@ uid=1 gid=2 prid=3 export QARGS="-x -D /dev/null -P /dev/null $SCRATCH_MNT" -umount $SCRATCH_DEV +_scratch_unmount echo; echo "### test user accounting" export MOUNT_OPTIONS="-ouquota"
@@ -100,7 +100,7 @@ type=u id=$uid test_files test_accounting -umount $SCRATCH_DEV 2>/dev/null +_scratch_unmount 2>/dev/null echo; echo "### test group accounting" export MOUNT_OPTIONS="-ogquota"
@@ -109,7 +109,7 @@ type=g id=$gid test_files test_accounting -umount $SCRATCH_DEV 2>/dev/null +_scratch_unmount 2>/dev/null #echo; echo "### test project accounting" export MOUNT_OPTIONS="-opquota"
@@ -118,7 +118,7 @@ type=p id=$prid test_files test_accounting -umount $SCRATCH_DEV 2>/dev/null +_scratch_unmount 2>/dev/null status=0 exit
tests/xfs/109 +3 -3
@@ -63,7 +63,7 @@ populate() done echo "flushing changes via umount/mount." - umount $SCRATCH_DEV + _scratch_unmount _scratch_mount }
@@ -91,7 +91,7 @@ allocate() } # real QA test starts here -umount $SCRATCH_DEV 2>/dev/null +_scratch_unmount 2>/dev/null _scratch_mount # see if faststart is possible (and requested)
@@ -100,7 +100,7 @@ faststart="" if [ -n "$FASTSTART" -a -f $SCRATCH_MNT/f0 ]; then faststart="-N" # causes us to skip the mkfs step fi -umount $SCRATCH_DEV +_scratch_unmount _scratch_mkfs_xfs -dsize=160m,agcount=4 $faststart | _filter_mkfs 2>$tmp.mkfs cat $tmp.mkfs >>$seqres.full
tests/xfs/110 +1 -1
@@ -41,7 +41,7 @@ _supported_os Linux _require_scratch # real QA test starts here -umount $SCRATCH_DEV 2>/dev/null +_scratch_unmount 2>/dev/null _scratch_mkfs_xfs | _filter_mkfs 2>$tmp.mkfs STR1=AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
tests/xfs/111 +2 -2
@@ -43,7 +43,7 @@ _require_scratch [ "$XFS_FSR_PROG" = "" ] && _notrun "xfs_fsr not found" # real QA test starts here -umount $SCRATCH_DEV 2>/dev/null +_scratch_unmount 2>/dev/null MKFS_OPTIONS="-bsize=4096" MOUNT_OPTIONS="-o noatime" _scratch_mkfs_xfs | _filter_mkfs 2>$tmp.mkfs
@@ -56,7 +56,7 @@ do $XFS_IO_PROG -f -c "pwrite 0 512" $SCRATCH_MNT/${I} > /dev/null let I=$I+1 done -umount $SCRATCH_DEV +_scratch_unmount echo Blat inode clusters src/itrash $SCRATCH_DEV
tests/xfs/116 +2 -2
@@ -54,10 +54,10 @@ _require_xfs_quota mkfs.xfs -f $SCRATCH_DEV >/dev/null 2>&1 mount -o uquota $SCRATCH_DEV $SCRATCH_MNT -umount $SCRATCH_MNT +_scratch_unmount xfs_db -r -c sb -c print $SCRATCH_DEV | grep qflags mount $SCRATCH_DEV $SCRATCH_MNT -umount $SCRATCH_MNT +_scratch_unmount xfs_db -r -c sb -c print $SCRATCH_DEV | grep qflags # success, all done
tests/xfs/121 +2 -2
@@ -76,7 +76,7 @@ src/godown -v -f $SCRATCH_MNT >> $seqres.full wait 2>/dev/null echo "unmount" -umount $SCRATCH_MNT +_scratch_unmount echo "logprint after going down..." _print_logstate
@@ -89,7 +89,7 @@ echo "godown" src/godown -v -f $SCRATCH_MNT >> $seqres.full echo "unmount" -umount $SCRATCH_MNT +_scratch_unmount echo "logprint after going down..." _print_logstate
tests/xfs/134 +1 -1
@@ -39,7 +39,7 @@ status=1 # failure is the default! _cleanup() { cd / - umount $SCRATCH_MNT 2>/dev/null + _scratch_unmount 2>/dev/null rm -f $tmp.* } trap "_cleanup; exit \$status" 0 1 2 3 15
tests/xfs/136 +3 -3
@@ -102,7 +102,7 @@ do_extents() _print_inode() { - umount $SCRATCH_MNT + _scratch_unmount xfs_db -r -c "inode $inum" -c "print" $SCRATCH_DEV |\ awk ' /nextents/ { print; next }
@@ -118,14 +118,14 @@ _print_inode() _print_inode_u() { - umount $SCRATCH_MNT + _scratch_unmount xfs_db -r -c "inode $inum" -c "print u" $SCRATCH_DEV _scratch_mount } _print_inode_a() { - umount $SCRATCH_MNT + _scratch_unmount xfs_db -r -c "inode $inum" -c "print a" $SCRATCH_DEV _scratch_mount }
tests/xfs/148 +2 -2
@@ -34,7 +34,7 @@ status=1 # failure is the default! _cleanup() { cd / - umount $SCRATCH_DEV 2>/dev/null + _scratch_unmount 2>/dev/null rm -f $tmp.* }
@@ -87,7 +87,7 @@ else _notrun "GQuota are enabled, test needs controlled sb recovery" src/feature -P $SCRATCH_DEV && \ _notrun "PQuota are enabled, test needs controlled sb recovery" - umount $SCRATCH_DEV + _scratch_unmount fi clear="" eval `xfs_db -r -c "sb 1" -c stack $SCRATCH_DEV | $PERL_PROG -ne '
tests/xfs/175 +1 -1
@@ -54,7 +54,7 @@ _require_scratch # test that we have DMAPI support _dmapi_scratch_mount -umount $SCRATCH_MNT > /dev/null 2>&1 +_scratch_unmount > /dev/null 2>&1 # _test_punch args: blksize extsize_hint filesize "pp1 pp2 pp3" \ # "ps1 ps2 ps3" "pt1 pt2 pt3" "wp1 wp2" "ws1 ws2" \
tests/xfs/176 +1 -1
@@ -51,7 +51,7 @@ _require_scratch # test that we have DMAPI support _dmapi_scratch_mount -umount $SCRATCH_MNT > /dev/null 2>&1 +_scratch_unmount > /dev/null 2>&1 # _test_punch args: blksize extsize_hint filesize "pp1 pp2 pp3" \ # "ps1 ps2 ps3" "pt1 pt2 pt3" "wp1 wp2" "ws1 ws2" \
tests/xfs/177 +2 -2
@@ -54,7 +54,7 @@ _require_scratch # test that we have DMAPI support _dmapi_scratch_mount -umount $SCRATCH_MNT > /dev/null 2>&1 +_scratch_unmount > /dev/null 2>&1 _scratch_mkfs_xfs >/dev/null 2>&1 \ || _fail "mkfs failed"
@@ -72,7 +72,7 @@ $here/src/bulkstat_unlink_test 15 100 6 $SCRATCH_MNT/bulkstat $here/src/bulkstat_unlink_test 20 1000 3 $SCRATCH_MNT/bulkstat # Mount scratch with ikeep enabled -umount $SCRATCH_MNT +_scratch_unmount _scratch_mount "-o dmapi,mtpt=$SCRATCH_MNT" \ || _fail "mount failed"
tests/xfs/181 +2 -2
@@ -90,7 +90,7 @@ wait $pid 2>/dev/null pid="" echo "unmount" -umount $SCRATCH_MNT +_scratch_unmount echo "logprint after going down..." _print_logstate
@@ -103,7 +103,7 @@ echo "godown" src/godown -v -f $SCRATCH_MNT >> $seqres.full echo "unmount" -umount $SCRATCH_MNT +_scratch_unmount echo "logprint after going down..." _print_logstate
tests/xfs/189 +6 -6
@@ -64,7 +64,7 @@ rm -f $seqres.full _cleanup() { cd / - umount $SCRATCH_MNT 2>/dev/null + _scratch_unmount 2>/dev/null _putback_scratch_fstab rm -f $tmp.* }
@@ -119,7 +119,7 @@ _test_remount_rw() _check_mount rw filestreams done - umount $SCRATCH_MNT + _scratch_unmount # remount ignores attr2, and noattr2 mount option does does not result # in any "attr2" specific option in /proc/mounts, so we can only check
@@ -138,7 +138,7 @@ _test_remount_rw() _check_mount rw done - umount $SCRATCH_MNT + _scratch_unmount } #
@@ -155,7 +155,7 @@ _test_remount_write() touch $SCRATCH_MNT/foobar [ $? -eq 0 ] || echo "touch (1) failed unexpectedly" - umount $SCRATCH_MNT + _scratch_unmount _scratch_mount -o ro [ $? -eq 0 ] || echo "mount (2) failed unexpectedly"
@@ -166,7 +166,7 @@ _test_remount_write() touch $SCRATCH_MNT/foobar [ $? -eq 0 ] || echo "touch (2) failed unexpectedly" - umount $SCRATCH_MNT + _scratch_unmount } #
@@ -193,7 +193,7 @@ _test_remount_barrier() [ $? -eq 0 ] || _fail "remount barrier failed" _check_mount rw - umount $SCRATCH_MNT + _scratch_unmount } #
tests/xfs/196 +1 -1
@@ -35,7 +35,7 @@ status=1 # failure is the default! _cleanup() { cd / - umount $SCRATCH_MNT + _scratch_unmount rm -f $tmp.* } trap "_cleanup; exit \$status" 0 1 2 3 15
tests/xfs/199 +3 -3
@@ -35,7 +35,7 @@ status=1 # failure is the default! _cleanup() { cd / - umount $SCRATCH_MNT >/dev/null 2>&1 + _scratch_unmount >/dev/null 2>&1 } trap "_cleanup; exit \$status" 0 1 2 3 15
@@ -69,7 +69,7 @@ echo "Clearing features2:" xfs_db -x $SCRATCH_DEV -c 'sb' -c 'write features2 0' _scratch_mount -umount $SCRATCH_MNT +_scratch_unmount echo "Features 2 after mount rw:" xfs_db -x $SCRATCH_DEV -c 'sb' -c 'print features2'
@@ -84,7 +84,7 @@ xfs_db -x $SCRATCH_DEV -c 'sb' -c 'write features2 0' # _scratch_mount -o ro _scratch_mount -o remount,rw -umount $SCRATCH_MNT +_scratch_unmount echo "Features 2 after mount ro and remount rw:" xfs_db -x $SCRATCH_DEV -c 'sb' -c 'print features2'
tests/xfs/201 +1 -1
@@ -43,7 +43,7 @@ do_pwrite() _cleanup() { - umount $SCRATCH_MNT + _scratch_unmount } trap "_cleanup; exit \$status" 0 1 2 3 15
tests/xfs/220 +3 -3
@@ -36,7 +36,7 @@ status=1 # failure is the default! _cleanup() { cd / - umount $SCRATCH_DEV >/dev/null 2>&1 + _scratch_unmount >/dev/null 2>&1 } trap "_cleanup; exit \$status" 0 1 2 3 15
@@ -64,7 +64,7 @@ _scratch_mount -o uquota xfs_quota -x -c off $SCRATCH_DEV # and unmount (this used to crash) -umount $SCRATCH_DEV +_scratch_unmount # create scratch filesystem _scratch_mkfs_xfs >/dev/null 2>&1
@@ -77,7 +77,7 @@ _scratch_mount -o uquota xfs_quota -x -c off -c remove $SCRATCH_DEV # and unmount again -umount $SCRATCH_DEV +_scratch_unmount status=0 exit $status
tests/xfs/227 +2 -2
@@ -161,7 +161,7 @@ _scratch_mount fragment_freespace # unmount and remount to reset all allocator indexes -umount $SCRATCH_MNT +_scratch_unmount _scratch_mount # create a range of source files, then fsr them to a known size
@@ -205,6 +205,6 @@ for n in `seq 4 1 12`; do done done -umount $SCRATCH_MNT +_scratch_unmount echo "--- silence is golden ---" status=0 ; exit
tests/xfs/244 +2 -2
@@ -39,7 +39,7 @@ trap "_cleanup; exit \$status" 0 1 2 3 15 _cleanup() { cd / - umount $SCRATCH_MNT 2>/dev/null + _scratch_unmount 2>/dev/null rm -f $tmp.* }
@@ -96,7 +96,7 @@ if $XFS_QUOTA_PROG -x -c "project -s -p $dir/over32bit 5344967296" $SCRATCH_DEV fi # Do testing on filesystem with projid32bit feature enabled -umount $SCRATCH_DEV 2>/dev/null +_scratch_unmount 2>/dev/null _scratch_mkfs_xfs -i projid32bit=1 >> $seqres.full || _fail "mkfs failed" _qmount mkdir $dir
tests/xfs/287 +3 -3
@@ -40,7 +40,7 @@ rm -f $seqres.full _cleanup() { cd / - umount $SCRATCH_MNT 2>/dev/null + _scratch_unmount 2>/dev/null rm -rf $tmp.* }
@@ -84,7 +84,7 @@ echo "No 32bit project quotas:" $XFS_IO_PROG -r -c "lsproj" $dir/16bit $XFS_IO_PROG -r -c "lsproj" $dir/32bit -umount $SCRATCH_MNT +_scratch_unmount # Now, enable projid32bit support by xfs_admin xfs_admin -p $SCRATCH_DEV >> $seqres.full 2>&1 || _fail "xfs_admin failed"
@@ -129,7 +129,7 @@ $XFS_IO_PROG -r -c "lsproj" $restore_dir/16bit $XFS_IO_PROG -r -c "lsproj" $restore_dir/32bit $XFS_IO_PROG -r -c "lsproj" $restore_dir/32bitv2 -umount $SCRATCH_MNT +_scratch_unmount # Now, we can examine the file systems with xfs_db echo "These two values of 16bit project quota ids shall be the same"
tests/xfs/299 +3 -3
@@ -40,7 +40,7 @@ status=1 # failure is the default! _cleanup() { cd / - umount $SCRATCH_MNT 2>/dev/null + _scratch_unmount 2>/dev/null rm -f $tmp.* } trap "_cleanup; exit \$status" 0 1 2 3 15
@@ -225,7 +225,7 @@ _exercise g _exercise u echo "*** unmount" -umount $SCRATCH_MNT +_scratch_unmount _scratch_mkfs_xfs -m crc=1 2>/dev/null | _filter_mkfs 2>$tmp.mkfs
@@ -241,7 +241,7 @@ _exercise gno _exercise pno echo "*** unmount" -umount $SCRATCH_MNT +_scratch_unmount # success, all done status=0
tests/xfs/304 +3 -3
@@ -63,7 +63,7 @@ echo "*** turn off group quotas" xfs_quota -x -c 'off -g' $SCRATCH_MNT rmdir $QUOTA_DIR echo "*** umount" -umount $SCRATCH_MNT +_scratch_unmount _qmount mkdir -p $QUOTA_DIR
@@ -71,7 +71,7 @@ echo "*** turn off project quotas" xfs_quota -x -c 'off -p' $SCRATCH_MNT rmdir $QUOTA_DIR echo "*** umount" -umount $SCRATCH_MNT +_scratch_unmount _qmount mkdir -p $QUOTA_DIR
@@ -79,7 +79,7 @@ echo "*** turn off group/project quotas" xfs_quota -x -c 'off -gp' $SCRATCH_MNT rmdir $QUOTA_DIR echo "*** umount" -umount $SCRATCH_MNT +_scratch_unmount # success, all done status=0
Re: [PATCH 1/2] fstests: use mount/umount helpers everywhere
Quoted 4 lines · Eric Sandeen
Replace every explicit mount/umount of scratch or test devices with helper functions. This allows the next patch to add in hooks to these functions in order to set up & tear down overlayfs on every mount/umount.
Yeah, I don't know about this.
For nfs testing we don't setup xfstests to test xfs on block devices and then then magically configure nfs to export and mount it on the side.
Wouldn't we treat overlayfs the same way? It'd be its own fstype whose underlying resources are fs paths?
- z
Re: [PATCH 1/2] fstests: use mount/umount helpers everywhere
Quoted 6 lines · Zach Brown
Quoted 4 lines · Eric Sandeen
Replace every explicit mount/umount of scratch or test devices with helper functions. This allows the next patch to add in hooks to these functions in order to set up & tear down overlayfs on every mount/umount.
Quoted 7 lines
Yeah, I don't know about this.
For nfs testing we don't setup xfstests to test xfs on block devices and then then magically configure nfs to export and mount it on the side.
Wouldn't we treat overlayfs the same way? It'd be its own fstype whose underlying resources are fs paths?
Yeah, maybe I need to rethink it. TBH, I'm not really clear on how nfs gets set up in fstests, but I guess I should look.
Thanks,
-Eric
Re: [PATCH 1/2] fstests: use mount/umount helpers everywhere
Quoted 9 lines · Eric Sandeen
Quoted 8 lines · Zach Brown
Quoted 4 lines · Eric Sandeen
Replace every explicit mount/umount of scratch or test devices with helper functions. This allows the next patch to add in hooks to these functions in order to set up & tear down overlayfs on every mount/umount.
Yeah, I don't know about this.
Quoted 8 lines
Quoted 5 lines
For nfs testing we don't setup xfstests to test xfs on block devices and then then magically configure nfs to export and mount it on the side.
Wouldn't we treat overlayfs the same way? It'd be its own fstype whose underlying resources are fs paths?
Yeah, maybe I need to rethink it. TBH, I'm not really clear on how nfs gets set up in fstests, but I guess I should look.
Hrmph, well (talking to the duck, here) - nfs & cifs have no mkfs, no fs check, etc. Overlayfs tests really should, I think. So it's not quite like the net-fs tests.
Maybe what we need is an "FSTYP=overlayfs" but but another type for the underlying filesystem. And then that starts to look, I think, a lot like what I sent...
-Eric
Re: [PATCH 1/2] fstests: use mount/umount helpers everywhere
Quoted 16 lines · Eric Sandeen
Quoted 15 lines · Eric Sandeen
Quoted 13 lines · Zach Brown
Quoted 4 lines · Eric Sandeen
Replace every explicit mount/umount of scratch or test devices with helper functions. This allows the next patch to add in hooks to these functions in order to set up & tear down overlayfs on every mount/umount.
Yeah, I don't know about this.
For nfs testing we don't setup xfstests to test xfs on block devices and then then magically configure nfs to export and mount it on the side.
Wouldn't we treat overlayfs the same way? It'd be its own fstype whose underlying resources are fs paths?
Quoted 6 lines
Quoted 2 lines
Yeah, maybe I need to rethink it. TBH, I'm not really clear on how nfs gets set up in fstests, but I guess I should look.
Hrmph, well (talking to the duck, here) - nfs & cifs have no mkfs, no fs check, etc. Overlayfs tests really should, I think. So it's not quite like the net-fs tests.
Neither does overlayfs. You just know that you happen to be handing overlayfs paths that are on block devices that can be fscked. You certainly could configure an nfs xfstest run to have backing store that can be quisced and checked with fsck, if that's what you really wanted.
And you might want to test overlayfs on paths that can't be fscked.. like tmpfs for those who don't want persistent exception stores.
It seems pretty straight forward to me that overlayfs is an fs with its own configuration and behavioural quirks that should be tested. That's straight forward when its its own fs type.
Treating it as an environmental configuration like memory pressure or flakey IO isn't the right model, particularly because it injects itself into the interface -- inode numbers and devices in stat dancing around as upper files are created, that kind of thing.
- z
PATCH 2/2 fstests: Add overlayfs support
In reply to Eric SandeenIf OVERLAYFS=1 is set, then every time we mount the scratch or test device, set up overlayfs directories under it, and switch the directory under test to the upper directory.
This doesn't specifically or directly test overlayfs, it simply runs the existing tests over it. As such, a few tests fail, and may be expected to fail due to overlayfs limitations and caveats. I haven't sorted through the results yet.
---
README +2 -0
@@ -78,6 +78,8 @@ Preparing system for tests (IRIX and Linux): added to the end of fsstresss and fsx invocations, respectively, in case you wish to exclude certain operational modes from these tests. + - setenv OVERLAYFS "1" to set up an overlay directory after each + test or scratch mount, and run all tests in the upper directory, - or add a case to the switch in common/config assigning these variables based on the hostname of your test
common/rc +43 -0
81 lines not on this page · raw message
Re: [PATCH 2/2] fstests: Add overlayfs support
Quoted 10 lines · Eric Sandeen
If OVERLAYFS=1 is set, then every time we mount the scratch or test device, set up overlayfs directories under it, and switch the directory under test to the upper directory.
This doesn't specifically or directly test overlayfs, it simply runs the existing tests over it. As such, a few tests fail, and may be expected to fail due to overlayfs limitations and caveats. I haven't sorted through the results yet.
Signed-off-by Eric Sandeen <[email protected]>
Zach has almost convinced me that this is the wrong approach and/or not worth doing, or at least not merging.
Many of the failures are as a result of this being tacked on, and several tests wouldn't be expected to work at all.
So I dunno. What do people think; it's at least interesting on the side, to see what falls off.
Good news is, no oopses yet! :)
-Eric
Re: [PATCH 2/2] fstests: Add overlayfs support
----- Original Message -----
Quoted 20 lines
From: "Eric Sandeen" <[email protected]>
To: [email protected]
Sent: Friday, 20 March, 2015 7:57:49 PM
Subject: Re: [PATCH 2/2] fstests: Add overlayfs supportQuoted 10 lines · Eric Sandeen
If OVERLAYFS=1 is set, then every time we mount the scratch or test device, set up overlayfs directories under it, and switch the directory under test to the upper directory.
This doesn't specifically or directly test overlayfs, it simply runs the existing tests over it. As such, a few tests fail, and may be expected to fail due to overlayfs limitations and caveats. I haven't sorted through the results yet.
Signed-off-by Eric Sandeen <[email protected]>Zach has almost convinced me that this is the wrong approach and/or not worth doing, or at least not merging.
Quoted 8 lines
Many of the failures are as a result of this being tacked on, and several tests wouldn't be expected to work at all.
So I dunno. What do people think; it's at least interesting on the side, to see what falls off.
Good news is, no oopses yet! :)
Well, I agree with Zach. It would be good to have overlayfs, but I think it should be a standalone FS. Overlayfs has some specific things, though. As it needs more directories for work, we can suppose lowerdir is going to be TEST_DIR/SCRATCH_DIR, but what about upperdir? And o we need to be able to explicitly set what filesystem they should be on? Your patch put it all into a single directory, but I think we should be able to test it on different devices.
So I would say we need have both, something like
_require_test_overlay # basically what your patch do, a single step to make $TEST_DIR in overlay
and
OVERLAY_UPPER_FS="tmpfs"
OVERLAY_LOWER_FS="xfs"_require_scratch_overlay
I think we should be able to manipulate with underlying directories directly - though this can be the case only for some specific tests that will do all the work around overlayfs manually. I don't feel to answer this question myself.
I'm afraid I'm bringing more question than answers, though. :-)
Signature · 2 lines
Jan Tulak [email protected]