From 478f75b0d005c6d186a530ad39d3f809af90745b Mon Sep 17 00:00:00 2001 From: "Darrick J. Wong" Date: Thu, 26 May 2016 20:28:05 -0700 Subject: [PATCH] generic: don't put loop control files on the scratch mount If we're doing write/overwrite/snapshot/resource exhaustion tests on the scratch device, use the test directory to hold the loop termination signal files. This way we don't run infinitely because we can't create the flag due to ENOSPC. Signed-off-by: Darrick J. Wong Reviewed-by: Christoph Hellwig Signed-off-by: Eryu Guan --- tests/generic/162 | 8 +++++--- tests/generic/163 | 8 +++++--- tests/generic/164 | 8 +++++--- tests/generic/165 | 8 +++++--- tests/generic/166 | 8 +++++--- tests/generic/167 | 8 +++++--- tests/generic/168 | 8 +++++--- tests/generic/170 | 8 +++++--- tests/generic/333 | 20 ++++++++++++-------- tests/generic/334 | 20 ++++++++++++-------- 10 files changed, 64 insertions(+), 40 deletions(-) diff --git a/tests/generic/162 b/tests/generic/162 index 5ff2ee2c..61cf4634 100755 --- a/tests/generic/162 +++ b/tests/generic/162 @@ -33,7 +33,7 @@ trap "_cleanup; exit \$status" 0 1 2 3 7 15 _cleanup() { cd / - rm -rf $tmp.* + rm -rf $tmp.* $finished_file wait } @@ -51,6 +51,8 @@ _scratch_mkfs > $seqres.full 2>&1 _scratch_mount >> $seqres.full 2>&1 testdir=$SCRATCH_MNT/test-$seq +finished_file=/tmp/finished +rm -rf $finished_file mkdir $testdir loops=512 @@ -64,7 +66,7 @@ _pwrite_byte 0x61 0 $((loops * blksz)) $testdir/file2 >> $seqres.full _scratch_cycle_mount overwrite() { - while [ ! -e $testdir/finished ]; do + while [ ! -e $finished_file ]; do seq $nr_loops -1 0 | while read i; do _pwrite_byte 0x61 $((i * blksz)) $blksz $testdir/file2 >> $seqres.full done @@ -81,7 +83,7 @@ for i in `seq 1 2`; do done done echo "Finished dedupeing" -touch $testdir/finished +touch $finished_file wait # success, all done diff --git a/tests/generic/163 b/tests/generic/163 index fcba677c..e2c6042c 100755 --- a/tests/generic/163 +++ b/tests/generic/163 @@ -33,7 +33,7 @@ trap "_cleanup; exit \$status" 0 1 2 3 7 15 _cleanup() { cd / - rm -rf $tmp.* + rm -rf $tmp.* $finished_file wait } @@ -51,6 +51,8 @@ _scratch_mkfs > $seqres.full 2>&1 _scratch_mount >> $seqres.full 2>&1 testdir=$SCRATCH_MNT/test-$seq +finished_file=/tmp/finished +rm -rf $finished_file mkdir $testdir loops=512 @@ -64,7 +66,7 @@ _pwrite_byte 0x61 0 $((loops * blksz)) $testdir/file2 >> $seqres.full _scratch_cycle_mount overwrite() { - while [ ! -e $testdir/finished ]; do + while [ ! -e $finished_file ]; do seq $nr_loops -1 0 | while read i; do _pwrite_byte 0x61 $((i * blksz)) $blksz $testdir/file1 >> $seqres.full done @@ -81,7 +83,7 @@ for i in `seq 1 2`; do done done echo "Finished dedupeing" -touch $testdir/finished +touch $finished_file wait # success, all done diff --git a/tests/generic/164 b/tests/generic/164 index acacb7f4..78ea787e 100755 --- a/tests/generic/164 +++ b/tests/generic/164 @@ -34,7 +34,7 @@ trap "_cleanup; exit \$status" 0 1 2 3 7 15 _cleanup() { cd / - rm -rf $tmp.* + rm -rf $tmp.* $finished_file wait } @@ -53,6 +53,8 @@ _scratch_mkfs > $seqres.full 2>&1 _scratch_mount >> $seqres.full 2>&1 testdir=$SCRATCH_MNT/test-$seq +finished_file=/tmp/finished +rm -rf $finished_file mkdir $testdir loops=512 @@ -71,7 +73,7 @@ fbytes() { } reader() { - while [ ! -e $testdir/finished ]; do + while [ ! -e $finished_file ]; do _read_range $testdir/file3 0 $((loops * blksz)) | fbytes done } @@ -91,7 +93,7 @@ for i in `seq 1 2`; do done done echo "Finished reflinking" -touch $testdir/finished +touch $finished_file wait # success, all done diff --git a/tests/generic/165 b/tests/generic/165 index b742d196..ca11e1e6 100755 --- a/tests/generic/165 +++ b/tests/generic/165 @@ -34,7 +34,7 @@ trap "_cleanup; exit \$status" 0 1 2 3 7 15 _cleanup() { cd / - rm -rf $tmp.* + rm -rf $tmp.* $finished_file wait } @@ -54,6 +54,8 @@ _scratch_mkfs > $seqres.full 2>&1 _scratch_mount >> $seqres.full 2>&1 testdir=$SCRATCH_MNT/test-$seq +finished_file=/tmp/finished +rm -rf $finished_file mkdir $testdir loops=512 @@ -72,7 +74,7 @@ fbytes() { } reader() { - while [ ! -e $testdir/finished ]; do + while [ ! -e $finished_file ]; do _read_range $testdir/file3 0 $((loops * blksz)) -d | fbytes done } @@ -92,7 +94,7 @@ for i in `seq 1 2`; do done done echo "Finished reflinking" -touch $testdir/finished +touch $finished_file wait # success, all done diff --git a/tests/generic/166 b/tests/generic/166 index 0e31f2eb..8600a133 100755 --- a/tests/generic/166 +++ b/tests/generic/166 @@ -34,7 +34,7 @@ trap "_cleanup; exit \$status" 0 1 2 3 7 15 _cleanup() { cd / - rm -rf $tmp.* + rm -rf $tmp.* $finished_file wait } @@ -54,6 +54,8 @@ _scratch_mkfs > $seqres.full 2>&1 _scratch_mount >> $seqres.full 2>&1 testdir=$SCRATCH_MNT/test-$seq +finished_file=/tmp/finished +rm -rf $finished_file mkdir $testdir loops=1024 @@ -68,7 +70,7 @@ _scratch_cycle_mount # Snapshot creator... snappy() { n=0 - while [ ! -e $testdir/finished ]; do + while [ ! -e $finished_file ]; do out="$(_cp_reflink $testdir/file1 $testdir/snap_$n 2>&1)" res=$? echo "$out" | grep -q "No space left" && break @@ -83,7 +85,7 @@ snappy & seq $nr_loops -1 0 | while read i; do _pwrite_byte 0x63 $((i * blksz)) $blksz -d $testdir/file1 >> $seqres.full done -touch $testdir/finished +touch $finished_file wait # success, all done diff --git a/tests/generic/167 b/tests/generic/167 index b2d6c87b..261506bd 100755 --- a/tests/generic/167 +++ b/tests/generic/167 @@ -34,7 +34,7 @@ trap "_cleanup; exit \$status" 0 1 2 3 7 15 _cleanup() { cd / - rm -rf $tmp.* + rm -rf $tmp.* $finished_file wait } @@ -53,6 +53,8 @@ _scratch_mkfs > $seqres.full 2>&1 _scratch_mount >> $seqres.full 2>&1 testdir=$SCRATCH_MNT/test-$seq +finished_file=/tmp/finished +rm -rf $finished_file mkdir $testdir loops=1024 @@ -67,7 +69,7 @@ _scratch_cycle_mount # Snapshot creator... snappy() { n=0 - while [ ! -e $testdir/finished ]; do + while [ ! -e $finished_file ]; do out="$(_cp_reflink $testdir/file1 $testdir/snap_$n 2>&1)" res=$? echo "$out" | grep -q "No space left" && break @@ -82,7 +84,7 @@ snappy & seq $nr_loops -1 0 | while read i; do _pwrite_byte 0x63 $((i * blksz)) $blksz $testdir/file1 >> $seqres.full done -touch $testdir/finished +touch $finished_file wait # success, all done diff --git a/tests/generic/168 b/tests/generic/168 index 7047d10a..ceee2640 100755 --- a/tests/generic/168 +++ b/tests/generic/168 @@ -34,7 +34,7 @@ trap "_cleanup; exit \$status" 0 1 2 3 7 15 _cleanup() { cd / - rm -rf $tmp.* + rm -rf $tmp.* $finished_file wait } @@ -52,6 +52,8 @@ _scratch_mkfs > $seqres.full 2>&1 _scratch_mount >> $seqres.full 2>&1 testdir=$SCRATCH_MNT/test-$seq +finished_file=/tmp/finished +rm -rf $finished_file mkdir $testdir loops=1024 @@ -66,7 +68,7 @@ _scratch_cycle_mount # Direct I/O overwriter... overwrite() { - while [ ! -e $testdir/finished ]; do + while [ ! -e $finished_file ]; do seq $nr_loops -1 0 | while read i; do _pwrite_byte 0x63 $((i * blksz)) $blksz $testdir/file2 >> $seqres.full done @@ -82,7 +84,7 @@ seq 1 10 | while read j; do [ $? -ne 0 ] && exit done done -touch $testdir/finished +touch $finished_file wait # success, all done diff --git a/tests/generic/170 b/tests/generic/170 index 4861052e..65592430 100755 --- a/tests/generic/170 +++ b/tests/generic/170 @@ -34,7 +34,7 @@ trap "_cleanup; exit \$status" 0 1 2 3 7 15 _cleanup() { cd / - rm -rf $tmp.* + rm -rf $tmp.* $finished_file wait } @@ -53,6 +53,8 @@ _scratch_mkfs > $seqres.full 2>&1 _scratch_mount >> $seqres.full 2>&1 testdir=$SCRATCH_MNT/test-$seq +finished_file=/tmp/finished +rm -rf $finished_file mkdir $testdir loops=1024 @@ -67,7 +69,7 @@ _scratch_cycle_mount # Direct I/O overwriter... overwrite() { - while [ ! -e $testdir/finished ]; do + while [ ! -e $finished_file ]; do seq $nr_loops -1 0 | while read i; do _pwrite_byte 0x63 $((i * blksz)) $blksz -d $testdir/file2 >> $seqres.full done @@ -83,7 +85,7 @@ seq 1 10 | while read j; do [ $? -ne 0 ] && exit done done -touch $testdir/finished +touch $finished_file wait # success, all done diff --git a/tests/generic/333 b/tests/generic/333 index 8db86e3c..3d874d7e 100755 --- a/tests/generic/333 +++ b/tests/generic/333 @@ -34,7 +34,7 @@ trap "_cleanup; exit \$status" 0 1 2 3 7 15 _cleanup() { cd / - rm -rf $tmp.* + rm -rf $tmp.* $finished_file $abort_file wait } @@ -54,6 +54,10 @@ _scratch_mkfs_sized $((400 * 1048576)) > $seqres.full 2>&1 _scratch_mount >> $seqres.full 2>&1 testdir=$SCRATCH_MNT/test-$seq +finished_file=/tmp/finished +rm -rf $finished_file +abort_file=/tmp/abort +rm -rf $abort_file mkdir $testdir loops=1024 @@ -68,7 +72,7 @@ _scratch_cycle_mount # Snapshot creator... snappy() { n=0 - while [ ! -e $testdir/finished ]; do + while [ ! -e $finished_file ]; do out="$(_cp_reflink $testdir/file1 $testdir/snap_$n 2>&1)" res=$? echo $out | grep -q "No space left" && break @@ -76,7 +80,7 @@ snappy() { test $res -ne 0 && break n=$((n + 1)) done - touch $testdir/abort + touch $abort_file } echo "Snapshot a file undergoing directio rewrite" @@ -85,13 +89,13 @@ seq 1 1000 | while read j; do seq $nr_loops -1 0 | while read i; do out="$(_pwrite_byte 0x63 $((i * blksz)) $blksz -d $testdir/file1 2>&1)" echo $out >> $seqres.full - echo $out | grep -q "No space left" && touch $testdir/abort - echo $out | grep -qi "error" && touch $testdir/abort - test -e $testdir/abort && break + echo $out | grep -q "No space left" && touch $abort_file + echo $out | grep -qi "error" && touch $abort_file + test -e $abort_file && break done - test -e $testdir/abort && break + test -e $abort_file && break done -touch $testdir/finished +touch $finished_file wait # success, all done diff --git a/tests/generic/334 b/tests/generic/334 index 57141252..fb21d4f9 100755 --- a/tests/generic/334 +++ b/tests/generic/334 @@ -34,7 +34,7 @@ trap "_cleanup; exit \$status" 0 1 2 3 7 15 _cleanup() { cd / - rm -rf $tmp.* + rm -rf $tmp.* $finished_file $abort_file wait } @@ -53,6 +53,10 @@ _scratch_mkfs_sized $((400 * 1048576)) > $seqres.full 2>&1 _scratch_mount >> $seqres.full 2>&1 testdir=$SCRATCH_MNT/test-$seq +finished_file=/tmp/finished +rm -rf $finished_file +abort_file=/tmp/abort +rm -rf $abort_file mkdir $testdir loops=1024 @@ -67,7 +71,7 @@ _scratch_cycle_mount # Snapshot creator... snappy() { n=0 - while [ ! -e $testdir/finished ]; do + while [ ! -e $finished_file ]; do out="$(_cp_reflink $testdir/file1 $testdir/snap_$n 2>&1)" res=$? echo $out | grep -q "No space left" && break @@ -75,7 +79,7 @@ snappy() { test $res -ne 0 && break n=$((n + 1)) done - touch $testdir/abort + touch $abort_file } echo "Snapshot a file undergoing buffered rewrite" @@ -84,13 +88,13 @@ seq 1 1000 | while read j; do seq $nr_loops -1 0 | while read i; do out="$(_pwrite_byte 0x63 $((i * blksz)) $blksz $testdir/file1 2>&1)" echo $out >> $seqres.full - echo $out | grep -q "No space left" && touch $testdir/abort - echo $out | grep -qi "error" && touch $testdir/abort - test -e $testdir/abort && break + echo $out | grep -q "No space left" && touch $abort_file + echo $out | grep -qi "error" && touch $abort_file + test -e $abort_file && break done - test -e $testdir/abort && break + test -e $abort_file && break done -touch $testdir/finished +touch $finished_file wait # success, all done -- 2.39.5