From: Anand Jain <anand.jain@oracle.com>
To: Qu Wenruo <quwenruo.btrfs@gmx.com>, fstests@vger.kernel.org
Cc: linux-btrfs@vger.kernel.org
Subject: Re: [PATCH RFC] fstests: generic/077: fix populate fs use _fill_fs()
Date: Fri, 12 Apr 2019 15:30:08 +0800 [thread overview]
Message-ID: <b92da32a-d991-f86d-7b85-b1dd33f92b61@oracle.com> (raw)
In-Reply-To: <91949b01-d016-f732-265b-77a397a1efbe@gmx.com>
On 12/4/19 3:15 PM, Qu Wenruo wrote:
>
>
> On 2019/4/12 下午1:24, Anand Jain wrote:
>> Test case generic/077 uses files under /lib or /usr to fill SCRATCH_MNT.
>> If /usr or /lib is below 256mb then test fails to run, or if these dirs
>> are too large it takes a long time for the cp to finish. On my machine
>> it takes 645sec.
>
> Wait for a minute, ths fs is only 256M sized, if it takes you over 10
> minutes, there must be something else wrong.
What's happening is cp -r fails (ENOSPC) for each file, so the
cp -r runs for a long time.
>>
>> This patch propose to use the common/populate function _fill_fs() to
>> write files into the target directory instead. However I am not too
>> sure about the motivation of this test case in the first place, and
>> why does it wanted to cp /usr or /lib,
>
> To my eyes, it's using /usr or /lib just for it's mostly full/contains a
> lot of files for most systems.
A lot of files. At the same time its not consistent across systems.
>> and why fs should become full?
>
> Maybe to hit certain ENOSPC corner case for ACL/xattr, just my guess.
ok.
>> Any idea? Thanks.
>
> Use populate_fs is definitely the right move.
>
> However I have some concern below.
>
> [snip]
>> echo "*** set default ACL"
>> setfacl -R -dm u:fsgqa:rwx,g::rwx,o::r-x,m::rwx $SCRATCH_MNT/subdir
>>
>> -echo "*** populate filesystem, pass #1" | tee -a $seqres.full
>> -cp -rf $filler $SCRATCH_MNT/subdir >$seqres.full 2>&1
>> -
>> -echo "*** populate filesystem, pass #2" | tee -a $seqres.full
>> -cp -rf $filler $SCRATCH_MNT/subdir >$seqres.full 2>&1
>> +blksz="$(_get_block_size $SCRATCH_MNT/subdir)"
>> +echo "*** populate filesystem" | tee -a $seqres.full
>> +echo "*** fill_fs $fs_size $SCRATCH_MNT/subdir $blksz 0" >> $seqres.full
>> +_fill_fs $fs_size $SCRATCH_MNT/subdir $blksz 0 >> $seqres.full 2>&1
>
> Unlike the original behavior, which do 2 passes and the 2nd pass will
> overwrite previous files.
>
> While after your modification, it's no longer the case.
>
> At least we should try to replay the 1st run to mimic the original behavior.
yep.
Thanks, Anand
> Thanks,
> Qu
>
>>
>> _check_scratch_fs
>>
>> diff --git a/tests/generic/077.out b/tests/generic/077.out
>> index eae7226ab29c..9c143c902a2c 100644
>> --- a/tests/generic/077.out
>> +++ b/tests/generic/077.out
>> @@ -1,7 +1,6 @@
>> QA output created by 077
>> *** create filesystem
>> *** set default ACL
>> -*** populate filesystem, pass #1
>> -*** populate filesystem, pass #2
>> +*** populate filesystem
>> *** all done
>> *** unmount
>>
>
prev parent reply other threads:[~2019-04-12 7:30 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-04-12 5:24 [PATCH RFC] fstests: generic/077: fix populate fs use _fill_fs() Anand Jain
2019-04-12 7:15 ` Qu Wenruo
2019-04-12 7:27 ` Nikolay Borisov
2019-04-12 7:39 ` Anand Jain
2019-04-12 7:30 ` Anand Jain [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=b92da32a-d991-f86d-7b85-b1dd33f92b61@oracle.com \
--to=anand.jain@oracle.com \
--cc=fstests@vger.kernel.org \
--cc=linux-btrfs@vger.kernel.org \
--cc=quwenruo.btrfs@gmx.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).