All of lore.kernel.org
 help / color / mirror / Atom feed
From: Eric Sandeen <sandeen@sandeen.net>
To: Josef Bacik <jbacik@fusionio.com>
Cc: xfs@oss.sgi.com
Subject: Re: [PATCH] xfstests: use xfs_io fiemap instead of filefrag
Date: Fri, 21 Jun 2013 13:22:54 -0500	[thread overview]
Message-ID: <51C499FE.5000908@sandeen.net> (raw)
In-Reply-To: <1371751743-20850-1-git-send-email-jbacik@fusionio.com>

On 6/20/13 1:09 PM, Josef Bacik wrote:
> Btrfs has always failed shared/218 because of the way we allocate extents on
> disk.  The last part of 218 writes contiguously holey from the start of the file
> forward, which for btrfs means we get 16 extents but they are physically
> contigous.  filefrag -v shows all 16 extents, but prints out that there is 1
> extent, because they are physically contiguous. 

I'd call that a filefrag bug but TBH filefrag has been so fragile, I don't
mind just switching to xfs_io.

> This isn't quite right and
> makes the test fail.  So instead of using filefrag use xfs_io -c fiemap which
> will print the whole map and then get the count from there.  With this patch
> btrfs now passes the test, I also verified that ext4 and xfs still pass this
> test.  Thanks,

Seems fine other than I think we need a:

_require_xfs_io_fiemap

somewhere; either in the tests that call _extent_count, or maybe just at the
top of common/defrag, although that's a little bigger hammer.

-Eric

> Signed-off-by: Josef Bacik <jbacik@fusionio.com>
> ---
>  common/defrag |    4 ++--
>  1 files changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/common/defrag b/common/defrag
> index f04fd42..a7e5488 100644
> --- a/common/defrag
> +++ b/common/defrag
> @@ -43,8 +43,8 @@ _require_defrag()
>  
>  _extent_count()
>  {
> -	$FILEFRAG_PROG $1 | awk '{print $2}'
> -	$FILEFRAG_PROG -v $1  >> $seqres.full 2>&1
> +	$XFS_IO_PROG -c "fiemap" $1 | tail -n +2 | grep -v hole | wc -l
> +	$XFS_IO_PROG -c "fiemap" $1  >> $seqres.full 2>&1
>  }
>  
>  # Defrag file, check it, and remove it.
> 

_______________________________________________
xfs mailing list
xfs@oss.sgi.com
http://oss.sgi.com/mailman/listinfo/xfs

      reply	other threads:[~2013-06-21 18:22 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-06-20 18:09 [PATCH] xfstests: use xfs_io fiemap instead of filefrag Josef Bacik
2013-06-21 18:22 ` Eric Sandeen [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=51C499FE.5000908@sandeen.net \
    --to=sandeen@sandeen.net \
    --cc=jbacik@fusionio.com \
    --cc=xfs@oss.sgi.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.