xfs
[Top] [All Lists]

Re: [PATCH 2/3] xfs: factor btree block freeing into a helper

To: Christoph Hellwig <hch@xxxxxx>
Subject: Re: [PATCH 2/3] xfs: factor btree block freeing into a helper
From: Brian Foster <bfoster@xxxxxxxxxx>
Date: Thu, 14 Jan 2016 12:32:21 -0500
Cc: xfs@xxxxxxxxxxx
Delivered-to: xfs@xxxxxxxxxxx
In-reply-to: <1452707454-15229-3-git-send-email-hch@xxxxxx>
References: <1452707454-15229-1-git-send-email-hch@xxxxxx> <1452707454-15229-3-git-send-email-hch@xxxxxx>
User-agent: Mutt/1.5.24 (2015-08-30)
On Wed, Jan 13, 2016 at 06:50:53PM +0100, Christoph Hellwig wrote:
> Signed-off-by: Christoph Hellwig <hch@xxxxxx>
> ---

Reviewed-by: Brian Foster <bfoster@xxxxxxxxxx>

>  fs/xfs/libxfs/xfs_btree.c | 23 ++++++++++++++++-------
>  1 file changed, 16 insertions(+), 7 deletions(-)
> 
> diff --git a/fs/xfs/libxfs/xfs_btree.c b/fs/xfs/libxfs/xfs_btree.c
> index 3143577..77afb4a 100644
> --- a/fs/xfs/libxfs/xfs_btree.c
> +++ b/fs/xfs/libxfs/xfs_btree.c
> @@ -294,6 +294,19 @@ xfs_btree_sblock_verify_crc(
>       return true;
>  }
>  
> +static int
> +xfs_btree_free_block(
> +     struct xfs_btree_cur    *cur,
> +     struct xfs_buf          *bp)
> +{
> +     int                     error;
> +
> +     error = cur->bc_ops->free_block(cur, bp);
> +     if (!error)
> +             XFS_BTREE_STATS_INC(cur, free);
> +     return error;
> +}
> +
>  /*
>   * Delete the btree cursor.
>   */
> @@ -3282,12 +3295,11 @@ xfs_btree_kill_iroot(
>  #endif
>       xfs_btree_copy_ptrs(cur, pp, cpp, numrecs);
>  
> -     error = cur->bc_ops->free_block(cur, cbp);
> +     error = xfs_btree_free_block(cur, cbp);
>       if (error) {
>               XFS_BTREE_TRACE_CURSOR(cur, XBT_ERROR);
>               return error;
>       }
> -     XFS_BTREE_STATS_INC(cur, free);
>  
>       cur->bc_bufs[level - 1] = NULL;
>       be16_add_cpu(&block->bb_level, -1);
> @@ -3320,14 +3332,12 @@ xfs_btree_kill_root(
>        */
>       cur->bc_ops->set_root(cur, newroot, -1);
>  
> -     error = cur->bc_ops->free_block(cur, bp);
> +     error = xfs_btree_free_block(cur, bp);
>       if (error) {
>               XFS_BTREE_TRACE_CURSOR(cur, XBT_ERROR);
>               return error;
>       }
>  
> -     XFS_BTREE_STATS_INC(cur, free);
> -
>       cur->bc_bufs[level] = NULL;
>       cur->bc_ra[level] = 0;
>       cur->bc_nlevels--;
> @@ -3833,10 +3843,9 @@ xfs_btree_delrec(
>       }
>  
>       /* Free the deleted block. */
> -     error = cur->bc_ops->free_block(cur, rbp);
> +     error = xfs_btree_free_block(cur, rbp);
>       if (error)
>               goto error0;
> -     XFS_BTREE_STATS_INC(cur, free);
>  
>       /*
>        * If we joined with the left neighbor, set the buffer in the
> -- 
> 1.9.1
> 
> _______________________________________________
> xfs mailing list
> xfs@xxxxxxxxxxx
> http://oss.sgi.com/mailman/listinfo/xfs

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