From: Xiao Yang <yangx.jy@cn.fujitsu.com>
To: "Darrick J. Wong" <darrick.wong@oracle.com>
Cc: Ira Weiny <ira.weiny@intel.com>, <fstests@vger.kernel.org>
Subject: Re: [PATCH v6 3/7] generic/223: Don't clear all mkfs options for _scratch_mkfs_geom() roughly
Date: Thu, 16 Jul 2020 09:36:19 +0800 [thread overview]
Message-ID: <5F0FAF13.3090805@cn.fujitsu.com> (raw)
In-Reply-To: <20200715160729.GM7600@magnolia>
于 2020/7/16 0:07, Darrick J. Wong 写道:
> On Wed, Jul 15, 2020 at 11:12:36AM +0800, Xiao Yang wrote:
>> On 2020/7/15 10:31, Ira Weiny wrote:
>>> On Tue, Jul 14, 2020 at 05:40:05PM +0800, Xiao Yang wrote:
>>>> ext4 can accept the last one if the same mkfs options are passed but xfs cannot
>>> I'm having trouble parsing this commit message. What does 'last one' refer to?
>>>
>>>> accept the same mkfs options and reports "xxx option is respecified" error.
>>> Ok I think I understand now. Some FS's (XFS) do not accept an option more than
>>> once. So we can't just blindly add options to the end of the MKFS_OPTIONS. Is
>>> that correct?
>> Hi Ira,
>>
>> Correct.
>>>> I
>>>> prefer to override the same mkfs option which is defined in MKFS_OPTION so that
>>>> we can have a chance to pass other mkfs options to _scratch_mkfs_geom().
>>> Instead the patch parses the current option string and replaces the value if
>>> the option is already there. This allows us to specify MKFS_OPTIONS to
>>> generic/223.
>> Right. :-)
>>
>> XFS_MKFS_OPTIONS/MKFS_OPTIONS can be used to specify some custom options by user,
>> so I don't want to clear it blindly.
>>
>> Thanks,
>> Xiao Yang
>>> I think the code is reasonable although my sed skills are not good enough to
>>> tell for sure... ;-)
>>>
>>> Ira
>>>
>>>> Signed-off-by: Xiao Yang<yangx.jy@cn.fujitsu.com>
>>>> ---
>>>> common/rc | 14 +++++++++++++-
>>>> tests/generic/223 | 1 -
>>>> 2 files changed, 13 insertions(+), 2 deletions(-)
>>>>
>>>> diff --git a/common/rc b/common/rc
>>>> index 6c908f2e..567cf83b 100644
>>>> --- a/common/rc
>>>> +++ b/common/rc
>>>> @@ -1051,7 +1051,19 @@ _scratch_mkfs_geom()
>>>>
>>>> case $FSTYP in
>>>> xfs)
>>>> - MKFS_OPTIONS+=" -b size=$blocksize, -d su=$sunit_bytes,sw=$swidth_mult"
>>>> + if echo "$MKFS_OPTIONS" | egrep -q "b?size="; then
>>>> + MKFS_OPTIONS=$(echo "$MKFS_OPTIONS" | sed -r "s/(b?size=)[0-9]+/\1$blocksize/")
>>>> + else
>>>> + MKFS_OPTIONS+=" -b size=$blocksize"
>>>> + fi
>>>> +
>>>> + if echo "$MKFS_OPTIONS" | egrep -q "(su|sunit|sw|swidth)="; then
>>>> + MKFS_OPTIONS=$(echo "$MKFS_OPTIONS" | sed -r \
>>>> + -e "s/(su|sunit)=[0-9kmg]+/su=$sunit_bytes/" \
>>>> + -e "s/(sw|swidth)=[0-9kmg]+/sw=$swidth_mult/")
>>>> + else
>>>> + MKFS_OPTIONS+=" -d su=$sunit_bytes,sw=$swidth_mult"
>>>> + fi
> ...ok, I see, this makes the function smart enough to substitute
> geometry parameters instead of dumping them on the end and letting that
> blow up. Heh, ok, that's definitely a weird quirk I've noticed.
>
>>>> ;;
>>>> ext4|ext4dev)
>>>> MKFS_OPTIONS+=" -b $blocksize -E stride=$sunit_blocks,stripe_width=$swidth_blocks"
>>>> diff --git a/tests/generic/223 b/tests/generic/223
>>>> index 6cfd00dd..ba7c9a44 100755
>>>> --- a/tests/generic/223
>>>> +++ b/tests/generic/223
>>>> @@ -41,7 +41,6 @@ for SUNIT_K in 8 16 32 64 128; do
>>>> let SUNIT_BLOCKS=$SUNIT_BYTES/$BLOCKSIZE
>>>>
>>>> echo "=== mkfs with su $SUNIT_BLOCKS blocks x 4 ==="
>>>> - export MKFS_OPTIONS=""
> So I guess you're deleting this so that the test runs with whatever
> MKFS_OPTIONS the test runner specified, while letting the test edit
> blocksize and stripe parameters?
Hi Darrick,
Right :-) . My change wants to achieve it.
Thanks,
Xiao Yang
> Proving I'm still bad at remembering to read commit messages,
> Reviewed-by: Darrick J. Wong<darrick.wong@oracle.com>
>
> --D
>
>>>> _scratch_mkfs_geom $SUNIT_BYTES 4 $BLOCKSIZE>> $seqres.full 2>&1
>>>> _scratch_mount
>>>>
>>>> --
>>>> 2.21.0
>>>>
>>>>
>>>>
>>> .
>>>
>>
>>
>
> .
>
next prev parent reply other threads:[~2020-07-16 1:36 UTC|newest]
Thread overview: 29+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-07-14 9:40 [PATCH v6 0/7] Make fstests support new behavior of DAX Xiao Yang
2020-07-14 9:40 ` [PATCH v6 1/7] common/rc: Introduce new helpers for DAX mount options and FS_XFLAG_DAX Xiao Yang
2020-07-15 1:59 ` Ira Weiny
2020-07-15 3:19 ` Xiao Yang
2020-07-15 4:15 ` Ira Weiny
2020-07-15 5:55 ` Xiao Yang
2020-07-15 15:56 ` Darrick J. Wong
2020-07-15 18:00 ` Ira Weiny
2020-07-14 9:40 ` [PATCH v6 2/7] fstests: Use _require_scratch_dax_mountopt() and _require_dax_iflag() Xiao Yang
2020-07-15 16:08 ` Darrick J. Wong
2020-07-14 9:40 ` [PATCH v6 3/7] generic/223: Don't clear all mkfs options for _scratch_mkfs_geom() roughly Xiao Yang
2020-07-15 2:31 ` Ira Weiny
2020-07-15 3:12 ` Xiao Yang
2020-07-15 16:07 ` Darrick J. Wong
2020-07-16 1:36 ` Xiao Yang [this message]
2020-07-14 9:40 ` [PATCH v6 4/7] generic/413, xfs/260: Improve format operation for PMD fault testing Xiao Yang
2020-07-15 16:09 ` Darrick J. Wong
2020-07-14 9:40 ` [PATCH v6 5/7] xfs/260: Move and update xfs/260 Xiao Yang
2020-07-15 16:10 ` Darrick J. Wong
2020-07-14 9:40 ` [PATCH v6 6/7] generic: Verify if statx() can qurey S_DAX flag on regular file correctly Xiao Yang
2020-07-14 9:40 ` [PATCH v6 7/7] generic: Verify the inheritance behavior of FS_XFLAG_DAX flag in various combinations Xiao Yang
2020-07-15 2:48 ` Ira Weiny
2020-07-15 5:39 ` Xiao Yang
2020-07-15 8:10 ` Xiao Yang
2020-07-15 16:43 ` Xiao Yang
2020-07-15 9:44 ` Xiao Yang
2020-07-15 16:19 ` Darrick J. Wong
2020-07-15 16:33 ` Xiao Yang
2020-07-15 18:18 ` Ira Weiny
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=5F0FAF13.3090805@cn.fujitsu.com \
--to=yangx.jy@cn.fujitsu.com \
--cc=darrick.wong@oracle.com \
--cc=fstests@vger.kernel.org \
--cc=ira.weiny@intel.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.