xfs
[Top] [All Lists]

Re: [PATCH 02/32 V2] xfs: remove xfs_tosspages

To: Andrew Dahl <adahl@xxxxxxx>
Subject: Re: [PATCH 02/32 V2] xfs: remove xfs_tosspages
From: Dave Chinner <david@xxxxxxxxxxxxx>
Date: Thu, 15 Nov 2012 08:17:45 +1100
Cc: xfs@xxxxxxxxxxx
In-reply-to: <50A3E807.5010403@xxxxxxx>
References: <1352721264-3700-1-git-send-email-david@xxxxxxxxxxxxx> <1352721264-3700-3-git-send-email-david@xxxxxxxxxxxxx> <20121114064247.GC1710@dastard> <50A3E807.5010403@xxxxxxx>
User-agent: Mutt/1.5.21 (2010-09-15)
On Wed, Nov 14, 2012 at 12:50:47PM -0600, Andrew Dahl wrote:
> On 11/14/2012 12:42 AM, Dave Chinner wrote:
> > xfs: remove xfs_tosspages
> > 
> > From: Dave Chinner <dchinner@xxxxxxxxxx>
> > 
> > It's a buggy, unnecessary wrapper that is duplicating
> > truncate_pagecache_range().
> > 
> > When replacing the call in xfs_change_file_space(), also ensure that
> > the length being allocated/freed is always positive before making
> > any changes. These checks are done in the lower extent manipulation
> > functions, too, but we need to do them before any page cache
> > operations.
> > 
> > Reported-by: Andrew Dahl <adahl@xxxxxxx>
> > Signed-off-by: Dave Chinner <dchinner@xxxxxxxxxx>
> > ---
> 
> >     case XFS_IOC_ZERO_RANGE:
> >             prealloc_type |= XFS_BMAPI_CONVERT;
> > -           xfs_tosspages(ip, startoffset, startoffset + bf->l_len, 0);
> > +           end = round_down(startoffset + bf->l_len, PAGE_SIZE) - 1;
> > +           if (startoffset > end)
> 
> This should be
> 
> if (startoffset <= end)

Duh - that's quite a thinko. :/

And I missed the fact that 242 failed in my rush to get it out. I
should have caught that before I sent it. My mistake.

Thanks for getting it fixed, though.

Cheers,

Dave.
-- 
Dave Chinner
david@xxxxxxxxxxxxx

<Prev in Thread] Current Thread [Next in Thread>