xfs
[Top] [All Lists]

Re: [PATCH] 273: don't delete everything if $SCRATCH_MNT isn't set

To: Dave Chinner <david@xxxxxxxxxxxxx>
Subject: Re: [PATCH] 273: don't delete everything if $SCRATCH_MNT isn't set
From: Bryan Schumaker <bjschuma@xxxxxxxxxx>
Date: Tue, 10 Apr 2012 09:09:19 -0400
Cc: Christoph Hellwig <hch@xxxxxxxxxxxxx>, xfs@xxxxxxxxxxx
In-reply-to: <20120409214445.GJ18323@dastard>
References: <4F832C25.3080408@xxxxxxxxxx> <20120409214445.GJ18323@dastard>
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:11.0) Gecko/20120328 Thunderbird/11.0.1
On 04/09/12 17:44, Dave Chinner wrote:

> On Mon, Apr 09, 2012 at 02:36:21PM -0400, Bryan Schumaker wrote:
>> The cleanup function is trapped before _require_scratch() is called, and
>> then expands "rm -rf $SCRATCH_MNT/*" to "rm -rf /*"
> 
> It doesn't need to clean up the scratch device - tests need to mkfs
> it first before using it, so just remove the $tmp* files. The sae
> fix is needed for tests 274 and 275.
> 
> Also, it shouldn't be using "-rf" to do cleanup - "rm -f $tmp.*" is
> sufficient to remove all the tmp files...


Thanks for looking!  Maybe something like this?  (copying what 272 does):

diff --git a/273 b/273
index 2965132..4641e9d 100755
--- a/273
+++ b/273
@@ -30,14 +30,7 @@ echo "QA output created by $seq"
 here=`pwd`
 tmp=/tmp/$$
 status=0       # success is the default!
-trap "_cleanup; exit \$status" 0 1 2 3 15
-
-_cleanup()
-{
-       cd /
-       rm -rf $SCRATCH_MNT/* $tmp.*
-       _scratch_unmount
-}
+trap "rm -f $tmp.*; exit \$status" 0 1 2 3 15
 
 . ./common.rc
 . ./common.filter
@@ -138,7 +131,18 @@ umount $SCRATCH_DEV 2>/dev/null
 _scratch_mkfs_sized $((2 * 1024 * 1024 * 1024)) >>$seq.full 2>&1
 _scratch_mount
 
-_do_workload
+if ! _do_workload; then
+       echo "workout failed"
+       _scratch_unmount
+       status=1
+       exit
+fi
+
+if ! _scratch_unmount; then
+       echo "failed to umount"
+       status=1
+       exit
+fi
 
 _check_scratch_fs
 status=$?
-- 
1.7.10

- Bryan

> 
> Cheers,
> 
> Dave.


<Prev in Thread] Current Thread [Next in Thread>