xfs
[Top] [All Lists]

Re: [PATCH 3/3] xfstests: introduce xfs/324 to verify turn group/project

To: Dave Chinner <david@xxxxxxxxxxxxx>
Subject: Re: [PATCH 3/3] xfstests: introduce xfs/324 to verify turn group/project quota off along with fsstress
From: Jeff Liu <jeff.liu@xxxxxxxxxx>
Date: Tue, 03 Dec 2013 15:36:35 +0800
Cc: "xfs@xxxxxxxxxxx" <xfs@xxxxxxxxxxx>
Delivered-to: xfs@xxxxxxxxxxx
In-reply-to: <20131203005308.GK10988@dastard>
References: <52983C4B.1090202@xxxxxxxxxx> <20131203005308.GK10988@dastard>
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.1.0
On 12/03 2013 08:53 AM, Dave Chinner wrote:
> On Fri, Nov 29, 2013 at 03:03:39PM +0800, Jeff Liu wrote:
>> From: Jie Liu <jeff.liu@xxxxxxxxxx>
>>
>> Introduce xfs/324 to verify that we can turn group/project quotas off
>> while user quota is on and fsstress is running.
>>
>> Signed-off-by: Jie Liu <jeff.liu@xxxxxxxxxx>
> ....
>> +
>> +# Modify as appropriate.
>> +_supported_fs xfs
>> +_supported_os Linux
>> +
>> +_require_scratch
>> +_require_xfs_quota
>> +_require_xfs_crc_sb
> 
> Hmmm, now that I look at the way you are using _require_xfs_crc_sb,
> it's broken. The scratch device is in an undefined state until a
> test runs _scratch_mkfs on it.
> 
> What you need to do is check whether mkfs supports "-m crc=1", and
> then mkfs the scratch device with that option set.
Got it.
> 
>> +
>> +_qmount_option "uquota,gquota,pquota"
>> +
>> +STRESS_DIR=$SCRATCH_MNT/testdir
>> +
> 
> Where do you mkfs the scratch device?
Oops, this problem must be concealed as it has ran against the environment
from previous test.
> 
>> +_exercise()
>> +{
>> +    type=$1
>> +
>> +    _qmount
>> +    mkdir -p $STRESS_DIR
>> +
>> +    $FSSTRESS_PROG -d $STRESS_DIR -n 100 -p 1000 $FSSTRESS_AVOID 
>> >>/dev/null 2>&1 &
> 
> There's no real reason for creating a load of 1000 processes here.
> Half of them won't even get started before this:
> 
>> +    xfs_quota -x -c "off -$type" $SCRATCH_DEV
> 
> is run.
> 
>> +    killall -q $FSSTRESS_PROG
>> +    wait
> 
> and then you kill them straight away.
> 
>> +    rm -rf $STRESS_DIR
>> +    umount $SCRATCH_MNT
> 
> You don't need this if you just scratch_mkfs the device between
> tests. 
> 
> So, wouldn't it be better to do:
> 
>       scratch_mkfs -m crc=1
>       _qmount
>       mkdir -p $STRESS_DIR
>       $FSSTRESS_PROG -d $STRESS_DIR -n 1000 -p 100 $FSSTRESS_AVOID 
> >>/dev/null 2>&1 &
>       sleep 10
>       xfs_quota -x -c "off -$type" $SCRATCH_DEV
>       sleep 5
>       killall -q $FSSTRESS_PROG
>       wait
Above problems will be fixed in next round of post.

Thanks,
-Jeff

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