All of lore.kernel.org
 help / color / mirror / Atom feed
From: Eryu Guan <guaneryu@gmail.com>
To: Xiao Yang <yangx.jy@cn.fujitsu.com>
Cc: fstests@vger.kernel.org
Subject: Re: [PATCH] xfs/010: Accept the inconsistencies of sparse records
Date: Sat, 23 Mar 2019 16:50:05 +0800	[thread overview]
Message-ID: <20190323085005.GS2824@desktop> (raw)
In-Reply-To: <1552980533-2138-1-git-send-email-yangx.jy@cn.fujitsu.com>

On Tue, Mar 19, 2019 at 03:28:53PM +0800, Xiao Yang wrote:
> If sparse inode is enabled, running xfs/010 gets the following error:
> -----------------------------------------------------
> +invalid inode count, AGNO/INO, count 0 ninodes 64
>  finobt record with no free inodes, AGNO/INO
> +invalid inode count, AGNO/INO, count 0 ninodes 64
> -----------------------------------------------------
> 
> We corrupt finobt records forcely, so it's reasonable for repair
> to detect the inconsistencies of sparse records if sparse inode
> is enabled.
> 
> Signed-off-by: Xiao Yang <yangx.jy@cn.fujitsu.com>

I cannot reproduce this failure, I'm using xfsprogs from upstream
for-next branch and kernel 5.0.

xfs/010 uses a fixed mkfs option to create the target fs:

_scratch_mkfs_xfs "-m crc=1,finobt=1 -d agcount=2" | _filter_mkfs 2>$seqres.full

So adding "-i sparse" to MKFS_OPTIONS won't create xfs with 'sparse'
enabled in test. And even after editing above mkfs options manually in
test, I still couldn't hit the failure. Did I miss anything?

Thanks,
Eryu

> ---
>  tests/xfs/010 | 6 ++++--
>  1 file changed, 4 insertions(+), 2 deletions(-)
> 
> diff --git a/tests/xfs/010 b/tests/xfs/010
> index e220a65..69c019b 100755
> --- a/tests/xfs/010
> +++ b/tests/xfs/010
> @@ -106,8 +106,10 @@ _scratch_unmount
>  # corrupt some finobt records
>  _corrupt_finobt_records $SCRATCH_DEV
>  
> -# repair should detect the inconsistencies
> -_scratch_xfs_repair 2>&1 | _filter_repair
> +# repair should detect the inconsistencies of finobt records
> +# repair can also detect the inconsistencies of sparse records if
> +# sparse inode is enabled, so accept both of outputs by filtering it.
> +_scratch_xfs_repair 2>&1 | _filter_repair | sed -e '/invalid inode count, AGNO\/INO/d'
>  _check_scratch_fs
>  
>  # nuke the finobt root, repair will have to regenerate from the inobt
> -- 
> 1.8.3.1
> 
> 
> 

  reply	other threads:[~2019-03-23  8:50 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-03-19  7:28 [PATCH] xfs/010: Accept the inconsistencies of sparse records Xiao Yang
2019-03-23  8:50 ` Eryu Guan [this message]
2019-03-25  6:59   ` Xiao Yang

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=20190323085005.GS2824@desktop \
    --to=guaneryu@gmail.com \
    --cc=fstests@vger.kernel.org \
    --cc=yangx.jy@cn.fujitsu.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.