xfs
[Top] [All Lists]

Re: [PATCH 2/4] xfs: do not immediately reuse busy extent ranges

To: Christoph Hellwig <hch@xxxxxxxxxxxxx>
Subject: Re: [PATCH 2/4] xfs: do not immediately reuse busy extent ranges
From: Dave Chinner <david@xxxxxxxxxxxxx>
Date: Fri, 29 Apr 2011 10:58:24 +1000
Cc: xfs@xxxxxxxxxxx
In-reply-to: <20110424190656.849588824@xxxxxxxxxxxxxxxxxxxxxx>
References: <20110424190613.404786382@xxxxxxxxxxxxxxxxxxxxxx> <20110424190656.849588824@xxxxxxxxxxxxxxxxxxxxxx>
User-agent: Mutt/1.5.20 (2009-06-14)
On Sun, Apr 24, 2011 at 03:06:15PM -0400, Christoph Hellwig wrote:
> Every time we reallocate a busy extent, we cause a synchronous log force
> to occur to ensure the freeing transaction is on disk before we continue
> and use the newly allocated extent.  This is extremely sub-optimal as we
> have to mark every transaction with blocks that get reused as synchronous.
> 
> Instead of searching the busy extent list after deciding on the extent to
> allocate, check each candidate extent during the allocation decisions as
> to whether they are in the busy list.  If they are in the busy list, we
> trim the busy range out of the extent we have found and determine if that
> trimmed range is still OK for allocation. In many cases, this check can
> be incorporated into the allocation extent alignment code which already
> does trimming of the found extent before determining if it is a valid
> candidate for allocation.
> 
> Based on earlier patches from Dave Chinner.
> 
> Signed-off-by: Christoph Hellwig <hch@xxxxxx>
> Reviewed-by: Alex Elder <aelder@xxxxxxx>

Reviewed-by: Dave Chinner <dchinner@xxxxxxxxxx>

-- 
Dave Chinner
david@xxxxxxxxxxxxx

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