From: Brian Foster <bfoster@redhat.com>
To: Christoph Hellwig <hch@lst.de>
Cc: linux-xfs@vger.kernel.org, Eric Sandeen <sandeen@redhat.com>
Subject: Re: [PATCH 6/6] xfs: remove XFS_BUF_TO_SBP
Date: Tue, 10 Mar 2020 07:34:46 -0400 [thread overview]
Message-ID: <20200310113446.GF50276@bfoster> (raw)
In-Reply-To: <20200306145220.242562-7-hch@lst.de>
On Fri, Mar 06, 2020 at 07:52:20AM -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@lst.de>
> ---
Reviewed-by: Brian Foster <bfoster@redhat.com>
> fs/xfs/libxfs/xfs_ag.c | 2 +-
> fs/xfs/libxfs/xfs_format.h | 1 -
> fs/xfs/libxfs/xfs_sb.c | 17 +++++++++--------
> fs/xfs/scrub/agheader.c | 2 +-
> fs/xfs/scrub/agheader_repair.c | 2 +-
> fs/xfs/xfs_log_recover.c | 2 +-
> fs/xfs/xfs_mount.c | 2 +-
> fs/xfs/xfs_trans.c | 2 +-
> 8 files changed, 15 insertions(+), 15 deletions(-)
>
> diff --git a/fs/xfs/libxfs/xfs_ag.c b/fs/xfs/libxfs/xfs_ag.c
> index 447e363d8468..f9b8c177ebc3 100644
> --- a/fs/xfs/libxfs/xfs_ag.c
> +++ b/fs/xfs/libxfs/xfs_ag.c
> @@ -231,7 +231,7 @@ xfs_sbblock_init(
> struct xfs_buf *bp,
> struct aghdr_init_data *id)
> {
> - struct xfs_dsb *dsb = XFS_BUF_TO_SBP(bp);
> + struct xfs_dsb *dsb = bp->b_addr;
>
> xfs_sb_to_disk(dsb, &mp->m_sb);
> dsb->sb_inprogress = 1;
> diff --git a/fs/xfs/libxfs/xfs_format.h b/fs/xfs/libxfs/xfs_format.h
> index 03531f0f537a..81a1b7084008 100644
> --- a/fs/xfs/libxfs/xfs_format.h
> +++ b/fs/xfs/libxfs/xfs_format.h
> @@ -560,7 +560,6 @@ xfs_is_quota_inode(struct xfs_sb *sbp, xfs_ino_t ino)
>
> #define XFS_SB_DADDR ((xfs_daddr_t)0) /* daddr in filesystem/ag */
> #define XFS_SB_BLOCK(mp) XFS_HDR_BLOCK(mp, XFS_SB_DADDR)
> -#define XFS_BUF_TO_SBP(bp) ((xfs_dsb_t *)((bp)->b_addr))
>
> #define XFS_HDR_BLOCK(mp,d) ((xfs_agblock_t)XFS_BB_TO_FSBT(mp,d))
> #define XFS_DADDR_TO_FSB(mp,d) XFS_AGB_TO_FSB(mp, \
> diff --git a/fs/xfs/libxfs/xfs_sb.c b/fs/xfs/libxfs/xfs_sb.c
> index 2f60fc3c99a0..00266de58954 100644
> --- a/fs/xfs/libxfs/xfs_sb.c
> +++ b/fs/xfs/libxfs/xfs_sb.c
> @@ -220,7 +220,7 @@ xfs_validate_sb_common(
> struct xfs_buf *bp,
> struct xfs_sb *sbp)
> {
> - struct xfs_dsb *dsb = XFS_BUF_TO_SBP(bp);
> + struct xfs_dsb *dsb = bp->b_addr;
> uint32_t agcount = 0;
> uint32_t rem;
>
> @@ -681,7 +681,7 @@ xfs_sb_read_verify(
> {
> struct xfs_sb sb;
> struct xfs_mount *mp = bp->b_mount;
> - struct xfs_dsb *dsb = XFS_BUF_TO_SBP(bp);
> + struct xfs_dsb *dsb = bp->b_addr;
> int error;
>
> /*
> @@ -707,7 +707,7 @@ xfs_sb_read_verify(
> * Check all the superblock fields. Don't byteswap the xquota flags
> * because _verify_common checks the on-disk values.
> */
> - __xfs_sb_from_disk(&sb, XFS_BUF_TO_SBP(bp), false);
> + __xfs_sb_from_disk(&sb, dsb, false);
> error = xfs_validate_sb_common(mp, bp, &sb);
> if (error)
> goto out_error;
> @@ -730,7 +730,7 @@ static void
> xfs_sb_quiet_read_verify(
> struct xfs_buf *bp)
> {
> - struct xfs_dsb *dsb = XFS_BUF_TO_SBP(bp);
> + struct xfs_dsb *dsb = bp->b_addr;
>
> if (dsb->sb_magicnum == cpu_to_be32(XFS_SB_MAGIC)) {
> /* XFS filesystem, verify noisily! */
> @@ -748,13 +748,14 @@ xfs_sb_write_verify(
> struct xfs_sb sb;
> struct xfs_mount *mp = bp->b_mount;
> struct xfs_buf_log_item *bip = bp->b_log_item;
> + struct xfs_dsb *dsb = bp->b_addr;
> int error;
>
> /*
> * Check all the superblock fields. Don't byteswap the xquota flags
> * because _verify_common checks the on-disk values.
> */
> - __xfs_sb_from_disk(&sb, XFS_BUF_TO_SBP(bp), false);
> + __xfs_sb_from_disk(&sb, dsb, false);
> error = xfs_validate_sb_common(mp, bp, &sb);
> if (error)
> goto out_error;
> @@ -766,7 +767,7 @@ xfs_sb_write_verify(
> return;
>
> if (bip)
> - XFS_BUF_TO_SBP(bp)->sb_lsn = cpu_to_be64(bip->bli_item.li_lsn);
> + dsb->sb_lsn = cpu_to_be64(bip->bli_item.li_lsn);
>
> xfs_buf_update_cksum(bp, XFS_SB_CRC_OFF);
> return;
> @@ -927,7 +928,7 @@ xfs_log_sb(
> mp->m_sb.sb_ifree = percpu_counter_sum(&mp->m_ifree);
> mp->m_sb.sb_fdblocks = percpu_counter_sum(&mp->m_fdblocks);
>
> - xfs_sb_to_disk(XFS_BUF_TO_SBP(bp), &mp->m_sb);
> + xfs_sb_to_disk(bp->b_addr, &mp->m_sb);
> xfs_trans_buf_set_type(tp, bp, XFS_BLFT_SB_BUF);
> xfs_trans_log_buf(tp, bp, 0, sizeof(struct xfs_dsb) - 1);
> }
> @@ -1007,7 +1008,7 @@ xfs_update_secondary_sbs(
> bp->b_ops = &xfs_sb_buf_ops;
> xfs_buf_oneshot(bp);
> xfs_buf_zero(bp, 0, BBTOB(bp->b_length));
> - xfs_sb_to_disk(XFS_BUF_TO_SBP(bp), &mp->m_sb);
> + xfs_sb_to_disk(bp->b_addr, &mp->m_sb);
> xfs_buf_delwri_queue(bp, &buffer_list);
> xfs_buf_relse(bp);
>
> diff --git a/fs/xfs/scrub/agheader.c b/fs/xfs/scrub/agheader.c
> index 163478855e7b..e9bcf1faa183 100644
> --- a/fs/xfs/scrub/agheader.c
> +++ b/fs/xfs/scrub/agheader.c
> @@ -92,7 +92,7 @@ xchk_superblock(
> if (!xchk_process_error(sc, agno, XFS_SB_BLOCK(mp), &error))
> return error;
>
> - sb = XFS_BUF_TO_SBP(bp);
> + sb = bp->b_addr;
>
> /*
> * Verify the geometries match. Fields that are permanently
> diff --git a/fs/xfs/scrub/agheader_repair.c b/fs/xfs/scrub/agheader_repair.c
> index c801f5892210..31dbb5d556fd 100644
> --- a/fs/xfs/scrub/agheader_repair.c
> +++ b/fs/xfs/scrub/agheader_repair.c
> @@ -49,7 +49,7 @@ xrep_superblock(
>
> /* Copy AG 0's superblock to this one. */
> xfs_buf_zero(bp, 0, BBTOB(bp->b_length));
> - xfs_sb_to_disk(XFS_BUF_TO_SBP(bp), &mp->m_sb);
> + xfs_sb_to_disk(bp->b_addr, &mp->m_sb);
>
> /* Write this to disk. */
> xfs_trans_buf_set_type(sc->tp, bp, XFS_BLFT_SB_BUF);
> diff --git a/fs/xfs/xfs_log_recover.c b/fs/xfs/xfs_log_recover.c
> index b6cf99f7153f..6abc0863c9c3 100644
> --- a/fs/xfs/xfs_log_recover.c
> +++ b/fs/xfs/xfs_log_recover.c
> @@ -5636,7 +5636,7 @@ xlog_do_recover(
>
> /* Convert superblock from on-disk format */
> sbp = &mp->m_sb;
> - xfs_sb_from_disk(sbp, XFS_BUF_TO_SBP(bp));
> + xfs_sb_from_disk(sbp, bp->b_addr);
> xfs_buf_relse(bp);
>
> /* re-initialise in-core superblock and geometry structures */
> diff --git a/fs/xfs/xfs_mount.c b/fs/xfs/xfs_mount.c
> index 56efe140c923..c5513e5a226a 100644
> --- a/fs/xfs/xfs_mount.c
> +++ b/fs/xfs/xfs_mount.c
> @@ -310,7 +310,7 @@ xfs_readsb(
> /*
> * Initialize the mount structure from the superblock.
> */
> - xfs_sb_from_disk(sbp, XFS_BUF_TO_SBP(bp));
> + xfs_sb_from_disk(sbp, bp->b_addr);
>
> /*
> * If we haven't validated the superblock, do so now before we try
> diff --git a/fs/xfs/xfs_trans.c b/fs/xfs/xfs_trans.c
> index 3b208f9a865c..73c534093f09 100644
> --- a/fs/xfs/xfs_trans.c
> +++ b/fs/xfs/xfs_trans.c
> @@ -450,7 +450,7 @@ xfs_trans_apply_sb_deltas(
> int whole = 0;
>
> bp = xfs_trans_getsb(tp, tp->t_mountp);
> - sbp = XFS_BUF_TO_SBP(bp);
> + sbp = bp->b_addr;
>
> /*
> * Check that superblock mods match the mods made to AGF counters.
> --
> 2.24.1
>
next prev parent reply other threads:[~2020-03-10 11:34 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-03-06 14:52 agfl and related cleanups v2 Christoph Hellwig
2020-03-06 14:52 ` [PATCH 1/6] xfs: remove the agfl_bno member from struct xfs_agfl Christoph Hellwig
2020-03-10 11:23 ` Brian Foster
2020-03-06 14:52 ` [PATCH 2/6] xfs: remove the xfs_agfl_t typedef Christoph Hellwig
2020-03-10 11:23 ` Brian Foster
2020-03-06 14:52 ` [PATCH 3/6] xfs: remove XFS_BUF_TO_AGFL Christoph Hellwig
2020-03-10 11:23 ` Brian Foster
2020-03-06 14:52 ` [PATCH 4/6] xfs: remove XFS_BUF_TO_AGI Christoph Hellwig
2020-03-10 11:34 ` Brian Foster
2020-03-06 14:52 ` [PATCH 5/6] xfs: remove XFS_BUF_TO_AGF Christoph Hellwig
2020-03-10 11:34 ` Brian Foster
2020-03-06 14:52 ` [PATCH 6/6] xfs: remove XFS_BUF_TO_SBP Christoph Hellwig
2020-03-10 11:34 ` Brian Foster [this message]
2020-03-10 16:00 ` Eric Sandeen
-- strict thread matches above, loose matches on Subject: below --
2020-01-30 13:33 agfl and related cleanups Christoph Hellwig
2020-01-30 13:33 ` [PATCH 6/6] xfs: remove XFS_BUF_TO_SBP Christoph Hellwig
2020-02-03 18:38 ` Eric Sandeen
2020-02-04 6:15 ` Christoph Hellwig
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20200310113446.GF50276@bfoster \
--to=bfoster@redhat.com \
--cc=hch@lst.de \
--cc=linux-xfs@vger.kernel.org \
--cc=sandeen@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox