coreutils
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: ready for release of coreutils-8.11?


From: Jim Meyering
Subject: Re: ready for release of coreutils-8.11?
Date: Wed, 13 Apr 2011 10:18:52 +0200

Pádraig Brady wrote:
...
> Right. However, we'd like to verify that holes
> are being propagated from source to dest,
> and a fiemap list is the only way I know to test that.
>
> Also it's unlikely I think that holes would be
> introduced differently in the dest, given the
> processing that cp does.
>
> So I'm leaning towards relaxing the test,
> by ignoring the length of the last extent
> along the lines of the following.

That works for me.
However, I find it a little too hard to visually
match the two occurrences of this expression,

    $a[$i]->{L_BLK} == $b[$i]->{L_BLK}

so how about factoring it for readability?

    my $block_match = $a[$i]->{L_BLK} == $b[$i]->{L_BLK};

also, please mention the kernel version
on which we saw this XFS behavior.

Thanks!

> diff --git a/tests/filefrag-extent-compare b/tests/filefrag-extent-compare
> index 2c33584..c8b840c 100644
> --- a/tests/filefrag-extent-compare
> +++ b/tests/filefrag-extent-compare
> @@ -56,11 +56,24 @@ merge_extents \@b;
>  my $i = 0;
>  while (defined $a[$i])
>    {
> -    $a[$i]->{L_BLK} == $b[$i]->{L_BLK} && $a[$i]->{LEN} == $b[$i]->{LEN}
> -      or die "$ME: differing extent:\n"
> -        . "  [$i]=$a[$i]->{L_BLK} $a[$i]->{LEN}\n"
> -          . "  [$i]=$b[$i]->{L_BLK} $b[$i]->{LEN}\n";
> -    $i++;
> +    if ($a[$i]->{L_BLK} == $b[$i]->{L_BLK} && $a[$i]->{LEN} == $b[$i]->{LEN})
> +      {
> +        $i++;
> +      }
> +    elsif ($i == (@a - 1) && $a[$i]->{L_BLK} == $b[$i]->{L_BLK})
> +      {
> +        # On XFS it was seen that the size of the last extent can vary,
> +        # and can extend beyond the length of the file.
> +        # So ignore the length of the last extent, because if the
> +        # file is the wrong length we'll get failures elsewhere.
> +        last;
> +      }
> +    else
> +      {
> +        die "$ME: differing extent:\n"
> +          . "  [$i]=$a[$i]->{L_BLK} $a[$i]->{LEN}\n"
> +            . "  [$i]=$b[$i]->{L_BLK} $b[$i]->{LEN}\n";
> +      }
>    }
>
>  ### Setup "GNU" style for perl-mode and cperl-mode.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]