All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Darrick J. Wong" <djwong@kernel.org>
To: Zorro Lang <zlang@redhat.com>
Cc: linux-xfs@vger.kernel.org, fstests@vger.kernel.org
Subject: Re: [PATCH] xfs/432: fix this test when external devices are in use
Date: Wed, 27 Jul 2022 07:59:55 -0700	[thread overview]
Message-ID: <YuFS6/9iMXzjv/YX@magnolia> (raw)
In-Reply-To: <20220727122142.ktp5loclqazchncw@zlang-mailbox>

On Wed, Jul 27, 2022 at 08:21:42PM +0800, Zorro Lang wrote:
> On Tue, Jul 26, 2022 at 12:51:31PM -0700, Darrick J. Wong wrote:
> > From: Darrick J. Wong <djwong@kernel.org>
> > 
> > This program exercises metadump and mdrestore being run against the
> > scratch device.  Therefore, the test must pass external log / rt device
> > arguments to xfs_repair -n to check the "restored" filesystem.  Fix the
> > incorrect usage, and report repair failures, since this test has been
> > silently failing for a while now.
> > 
> > Signed-off-by: Darrick J. Wong <djwong@kernel.org>
> > ---
> >  tests/xfs/432 |   11 ++++++++++-
> >  1 file changed, 10 insertions(+), 1 deletion(-)
> > 
> > diff --git a/tests/xfs/432 b/tests/xfs/432
> > index 86012f0b..5c6744ce 100755
> > --- a/tests/xfs/432
> > +++ b/tests/xfs/432
> > @@ -89,7 +89,16 @@ _scratch_xfs_metadump $metadump_file -w
> >  xfs_mdrestore $metadump_file $metadump_img
> >  
> >  echo "Check restored metadump image"
> > -$XFS_REPAIR_PROG -n $metadump_img >> $seqres.full 2>&1
> > +repair_args=('-n')
> > +[ "$USE_EXTERNAL" = yes -a ! -z "$SCRATCH_LOGDEV" ] && \
> > +	repair_args+=('-l' "$SCRATCH_LOGDEV")
> > +
> > +[ "$USE_EXTERNAL" = yes -a ! -z "$SCRATCH_RTDEV" ] && \
> > +	repair_args+=('-r' "$SCRATCH_RTDEV")
> > +
> > +$XFS_REPAIR_PROG "${repair_args[@]}" $metadump_img >> $seqres.full 2>&1
> > +res=$?
> > +test $res -ne 0 && echo "xfs_repair on restored fs returned $res?"
> 
> Make sense to me, I don't have better idea. One question, is xfs_metadump
> and xfs_mdrestore support rtdev? Due to I didn't find xfs_metadump have
> a "-r" option, although it has "-l logdev" :)

Oops, no it doesn't, so I'll remove that.

> About the "$res", I don't know why we need this extra variable, as it's
> not used in other place.

If you don't pass the correct arguments to xfs_repair or the metadump
trashes the fs, it'll exit with a nonzero code.  All the output goes to
$seqres.full, which means the test runner has no idea anything went
wrong and marks the test passed even though repair failed.

--D

> Thanks,
> Zorro
> 
> >  
> >  # success, all done
> >  status=0
> > 
> 

  reply	other threads:[~2022-07-27 14:59 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-07-26 19:51 [PATCH] xfs/432: fix this test when external devices are in use Darrick J. Wong
2022-07-27 12:21 ` Zorro Lang
2022-07-27 14:59   ` Darrick J. Wong [this message]
2022-07-27 17:21     ` Zorro Lang
2022-07-27 23:14       ` [PATCH] xfs/432: fix this test when external devices are in useOM Darrick J. Wong
2022-07-27 22:06 ` [PATCH] xfs/432: fix this test when external devices are in use Dave Chinner
2022-07-27 22:47   ` Darrick J. Wong
2022-07-27 23:15     ` Darrick J. Wong

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=YuFS6/9iMXzjv/YX@magnolia \
    --to=djwong@kernel.org \
    --cc=fstests@vger.kernel.org \
    --cc=linux-xfs@vger.kernel.org \
    --cc=zlang@redhat.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.