Re: [PATCH 3/6] xfs: remove XFS_BUF_TO_AGFL

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

 



On Fri, Mar 06, 2020 at 07:52:17AM -0700, Christoph Hellwig wrote:
> Just dereference bp->b_addr directly and make the code a little
> simpler and more clear.
> 
> Signed-off-by: Christoph Hellwig <hch@xxxxxx>
> Reviewed-by: Eric Sandeen <sandeen@xxxxxxxxxx>
> ---

Reviewed-by: Brian Foster <bfoster@xxxxxxxxxx>

>  fs/xfs/libxfs/xfs_ag.c         | 2 +-
>  fs/xfs/libxfs/xfs_alloc.c      | 7 ++++---
>  fs/xfs/libxfs/xfs_format.h     | 1 -
>  fs/xfs/scrub/agheader_repair.c | 3 +--
>  4 files changed, 6 insertions(+), 7 deletions(-)
> 
> diff --git a/fs/xfs/libxfs/xfs_ag.c b/fs/xfs/libxfs/xfs_ag.c
> index 831bdd035900..32ceba66456f 100644
> --- a/fs/xfs/libxfs/xfs_ag.c
> +++ b/fs/xfs/libxfs/xfs_ag.c
> @@ -291,7 +291,7 @@ xfs_agflblock_init(
>  	struct xfs_buf		*bp,
>  	struct aghdr_init_data	*id)
>  {
> -	struct xfs_agfl		*agfl = XFS_BUF_TO_AGFL(bp);
> +	struct xfs_agfl		*agfl = bp->b_addr;
>  	__be32			*agfl_bno;
>  	int			bucket;
>  
> diff --git a/fs/xfs/libxfs/xfs_alloc.c b/fs/xfs/libxfs/xfs_alloc.c
> index f668e62acc56..58874150b0ce 100644
> --- a/fs/xfs/libxfs/xfs_alloc.c
> +++ b/fs/xfs/libxfs/xfs_alloc.c
> @@ -588,7 +588,7 @@ xfs_agfl_verify(
>  	struct xfs_buf	*bp)
>  {
>  	struct xfs_mount *mp = bp->b_mount;
> -	struct xfs_agfl	*agfl = XFS_BUF_TO_AGFL(bp);
> +	struct xfs_agfl	*agfl = bp->b_addr;
>  	__be32		*agfl_bno = xfs_buf_to_agfl_bno(bp);
>  	int		i;
>  
> @@ -620,7 +620,7 @@ xfs_agfl_verify(
>  			return __this_address;
>  	}
>  
> -	if (!xfs_log_check_lsn(mp, be64_to_cpu(XFS_BUF_TO_AGFL(bp)->agfl_lsn)))
> +	if (!xfs_log_check_lsn(mp, be64_to_cpu(agfl->agfl_lsn)))
>  		return __this_address;
>  	return NULL;
>  }
> @@ -656,6 +656,7 @@ xfs_agfl_write_verify(
>  {
>  	struct xfs_mount	*mp = bp->b_mount;
>  	struct xfs_buf_log_item	*bip = bp->b_log_item;
> +	struct xfs_agfl		*agfl = bp->b_addr;
>  	xfs_failaddr_t		fa;
>  
>  	/* no verification of non-crc AGFLs */
> @@ -669,7 +670,7 @@ xfs_agfl_write_verify(
>  	}
>  
>  	if (bip)
> -		XFS_BUF_TO_AGFL(bp)->agfl_lsn = cpu_to_be64(bip->bli_item.li_lsn);
> +		agfl->agfl_lsn = cpu_to_be64(bip->bli_item.li_lsn);
>  
>  	xfs_buf_update_cksum(bp, XFS_AGFL_CRC_OFF);
>  }
> diff --git a/fs/xfs/libxfs/xfs_format.h b/fs/xfs/libxfs/xfs_format.h
> index 11a450e00231..fe685ad91e0f 100644
> --- a/fs/xfs/libxfs/xfs_format.h
> +++ b/fs/xfs/libxfs/xfs_format.h
> @@ -783,7 +783,6 @@ typedef struct xfs_agi {
>   */
>  #define XFS_AGFL_DADDR(mp)	((xfs_daddr_t)(3 << (mp)->m_sectbb_log))
>  #define	XFS_AGFL_BLOCK(mp)	XFS_HDR_BLOCK(mp, XFS_AGFL_DADDR(mp))
> -#define	XFS_BUF_TO_AGFL(bp)	((struct xfs_agfl *)((bp)->b_addr))
>  
>  struct xfs_agfl {
>  	__be32		agfl_magicnum;
> diff --git a/fs/xfs/scrub/agheader_repair.c b/fs/xfs/scrub/agheader_repair.c
> index 68ee1ce1ae36..6da2e87d19a8 100644
> --- a/fs/xfs/scrub/agheader_repair.c
> +++ b/fs/xfs/scrub/agheader_repair.c
> @@ -580,7 +580,7 @@ xrep_agfl_init_header(
>  	__be32			*agfl_bno;
>  	struct xfs_bitmap_range	*br;
>  	struct xfs_bitmap_range	*n;
> -	struct xfs_agfl		*agfl;
> +	struct xfs_agfl		*agfl = agfl_bp->b_addr;
>  	xfs_agblock_t		agbno;
>  	unsigned int		fl_off;
>  
> @@ -590,7 +590,6 @@ xrep_agfl_init_header(
>  	 * Start rewriting the header by setting the bno[] array to
>  	 * NULLAGBLOCK, then setting AGFL header fields.
>  	 */
> -	agfl = XFS_BUF_TO_AGFL(agfl_bp);
>  	memset(agfl, 0xFF, BBTOB(agfl_bp->b_length));
>  	agfl->agfl_magicnum = cpu_to_be32(XFS_AGFL_MAGIC);
>  	agfl->agfl_seqno = cpu_to_be32(sc->sa.agno);
> -- 
> 2.24.1
> 




[Index of Archives]     [XFS Filesystem Development (older mail)]     [Linux Filesystem Development]     [Linux Audio Users]     [Yosemite Trails]     [Linux Kernel]     [Linux RAID]     [Linux SCSI]


  Powered by Linux