xfs
[Top] [All Lists]

Re: [PATCH] xfstests: don't remove trailing zeros from integers

To: Eric Whitney <enwlinux@xxxxxxxxx>
Subject: Re: [PATCH] xfstests: don't remove trailing zeros from integers
From: Eric Whitney <enwlinux@xxxxxxxxx>
Date: Fri, 1 Mar 2013 12:36:59 -0500
Cc: Eric Sandeen <sandeen@xxxxxxxxxx>, xfs@xxxxxxxxxxx
Delivered-to: xfs@xxxxxxxxxxx
Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=x-received:date:from:to:cc:subject:message-id:references :mime-version:content-type:content-disposition:in-reply-to :user-agent; bh=MQcjAQvXjX+eypTQXiJZaLnPhrjEISvyEelOaG1uEi8=; b=Gl9gvMqWl7fJX66i3ZzP9T6M7gp86USnQFCpbizHVaOs1/NAyg4xhEVgeHtAC5KA06 hl4jADGhJ1Y+4aNwI56s/4ChIqXsosA7oaB1ZpVRH6HmbMYOIwNdbcJfX9VH6sKPNtrp nOPrbJZNQAi84C0G8PhUKjcTk0sJNKCKbX2rRnGalxzMb9dInaQL4iYEFapDPWmSsPSX GimOmHhyTtJ9Cq2/XUa338Q0TVf0qVoW0aycPeFk2g0kJWCPMsLioH7PQvbgKpWitwVr mXQfcV7PCB21nZ25+yIOxJUiUSsA7HMuitvVhsFEIHU9pAYF3yBrzbMeMV/CZlc84z6K WaNw==
In-reply-to: <20130301041344.GA3206@rocky>
References: <20130301002637.GB5016@wallace> <51301A92.2080104@xxxxxxxxxx> <20130301041344.GA3206@rocky>
User-agent: Mutt/1.5.21 (2010-09-15)
* Eric Whitney <enwlinux@xxxxxxxxx>:
> * Eric Sandeen <sandeen@xxxxxxxxxx>:
> > On 2/28/13 6:26 PM, Eric Whitney wrote:
> > > _within_tolerance strips trailing zeros from the min and max range
> > > values it outputs.  This leads to damage if the min or max value is
> > > an integer containing trailing zeros rather than a real number with
> > > a fractional part containing trailing zeros. Xfstest 289 can exhibit
> > > this problem when its input is out of range.  Modify the code so it
> > > will only remove trailing zeros found after a decimal point.
> > 
> > whoops, that's not too good.
> > 
> > It's only for the output message in a failure case though, correct?
> > But it makes the error output unhelpful.
> 
> Right on both counts.  We'd noticed the error output was confusing a few
> months ago when you fixed an ext4 free space reporting problem (this is an
> IOU) - 1280000 reported as 128 in that case.
> 
> > 
> > Seems a little weird that it still leaves the trailing decimal:
> > 
> > $ echo 20000.00 | sed -e '/\./s/0*$//'
> > 20000.
> > 
> > but that's not a big deal. The patch makes it better and
> > the output is understandable even if it has a trailing
> > decimal (which it had before anyway) so:
> > 
> > Reviewed-by: Eric Sandeen <sandeen@xxxxxxxxxx>
> 
> I'd reached the same conclusion, but if preferred I'll take this farther
> and eliminate the trailing decimal.
> 

On further consideration, it's easy enough to clean up the trailing decimal
and it's just better that way, even for an error case.  There's at least one
fix that isn't elegant but works.  I'll send along a V2 shortly.

Regards,
Eric

> Thanks for the review!
> 
> Eric
> 
> > 
> > > Signed-off-by: Eric Whitney <enwlinux@xxxxxxxxx>
> > > ---
> > >  common.filter |    6 ++++--
> > >  1 file changed, 4 insertions(+), 2 deletions(-)
> > > 
> > > diff --git a/common.filter b/common.filter
> > > index 9e4c90c..1df2f97 100644
> > > --- a/common.filter
> > > +++ b/common.filter
> > > @@ -106,8 +106,10 @@ EOF
> > >  
> > >    # fix up min, max precision for output
> > >    # can vary for 5.3, 6.2
> > > -  _min=`echo $_min | sed -e 's/0*$//'` # get rid of trailling zeroes
> > > -  _max=`echo $_max | sed -e 's/0*$//'` # get rid of trailling zeroes
> > > +
> > > +  # remove any trailing zeroes from min, max if they have fractional 
> > > parts
> > > +  _min=`echo $_min | sed -e '/\./s/0*$//'`
> > > +  _max=`echo $_max | sed -e '/\./s/0*$//'`
> > >  
> > >    if [ $_in_range -eq 1 ] 
> > >    then
> > > 
> > 

<Prev in Thread] Current Thread [Next in Thread>
  • Re: [PATCH] xfstests: don't remove trailing zeros from integers, Eric Whitney <=