Commit f1dbcd7e authored by Eric Sandeen's avatar Eric Sandeen Committed by Dave Chinner

xfs: add helper for updating checksums on xfs_bufs

Many/most callers of xfs_update_cksum() pass bp->b_addr and
BBTOB(bp->b_length) as the first 2 args.  Add a helper
which can just accept the bp and the crc offset, and work
it out on its own, for brevity.
Signed-off-by: default avatarEric Sandeen <sandeen@redhat.com>
Reviewed-by: default avatarDave Chinner <dchinner@redhat.com>
Signed-off-by: default avatarDave Chinner <david@fromorbit.com>
parent 51582170
...@@ -515,7 +515,7 @@ xfs_agfl_write_verify( ...@@ -515,7 +515,7 @@ xfs_agfl_write_verify(
if (bip) if (bip)
XFS_BUF_TO_AGFL(bp)->agfl_lsn = cpu_to_be64(bip->bli_item.li_lsn); XFS_BUF_TO_AGFL(bp)->agfl_lsn = cpu_to_be64(bip->bli_item.li_lsn);
xfs_update_cksum(bp->b_addr, BBTOB(bp->b_length), XFS_AGFL_CRC_OFF); xfs_buf_update_cksum(bp, XFS_AGFL_CRC_OFF);
} }
const struct xfs_buf_ops xfs_agfl_buf_ops = { const struct xfs_buf_ops xfs_agfl_buf_ops = {
...@@ -2269,7 +2269,7 @@ xfs_agf_write_verify( ...@@ -2269,7 +2269,7 @@ xfs_agf_write_verify(
if (bip) if (bip)
XFS_BUF_TO_AGF(bp)->agf_lsn = cpu_to_be64(bip->bli_item.li_lsn); XFS_BUF_TO_AGF(bp)->agf_lsn = cpu_to_be64(bip->bli_item.li_lsn);
xfs_update_cksum(bp->b_addr, BBTOB(bp->b_length), XFS_AGF_CRC_OFF); xfs_buf_update_cksum(bp, XFS_AGF_CRC_OFF);
} }
const struct xfs_buf_ops xfs_agf_buf_ops = { const struct xfs_buf_ops xfs_agf_buf_ops = {
......
...@@ -224,7 +224,7 @@ xfs_attr3_leaf_write_verify( ...@@ -224,7 +224,7 @@ xfs_attr3_leaf_write_verify(
if (bip) if (bip)
hdr3->info.lsn = cpu_to_be64(bip->bli_item.li_lsn); hdr3->info.lsn = cpu_to_be64(bip->bli_item.li_lsn);
xfs_update_cksum(bp->b_addr, BBTOB(bp->b_length), XFS_ATTR3_LEAF_CRC_OFF); xfs_buf_update_cksum(bp, XFS_ATTR3_LEAF_CRC_OFF);
} }
/* /*
......
...@@ -234,8 +234,7 @@ xfs_btree_lblock_calc_crc( ...@@ -234,8 +234,7 @@ xfs_btree_lblock_calc_crc(
return; return;
if (bip) if (bip)
block->bb_u.l.bb_lsn = cpu_to_be64(bip->bli_item.li_lsn); block->bb_u.l.bb_lsn = cpu_to_be64(bip->bli_item.li_lsn);
xfs_update_cksum(bp->b_addr, BBTOB(bp->b_length), xfs_buf_update_cksum(bp, XFS_BTREE_LBLOCK_CRC_OFF);
XFS_BTREE_LBLOCK_CRC_OFF);
} }
bool bool
...@@ -267,8 +266,7 @@ xfs_btree_sblock_calc_crc( ...@@ -267,8 +266,7 @@ xfs_btree_sblock_calc_crc(
return; return;
if (bip) if (bip)
block->bb_u.s.bb_lsn = cpu_to_be64(bip->bli_item.li_lsn); block->bb_u.s.bb_lsn = cpu_to_be64(bip->bli_item.li_lsn);
xfs_update_cksum(bp->b_addr, BBTOB(bp->b_length), xfs_buf_update_cksum(bp, XFS_BTREE_SBLOCK_CRC_OFF);
XFS_BTREE_SBLOCK_CRC_OFF);
} }
bool bool
......
...@@ -376,6 +376,13 @@ xfs_buf_verify_cksum(struct xfs_buf *bp, unsigned long cksum_offset) ...@@ -376,6 +376,13 @@ xfs_buf_verify_cksum(struct xfs_buf *bp, unsigned long cksum_offset)
cksum_offset); cksum_offset);
} }
static inline void
xfs_buf_update_cksum(struct xfs_buf *bp, unsigned long cksum_offset)
{
xfs_update_cksum(bp->b_addr, BBTOB(bp->b_length),
cksum_offset);
}
/* /*
* Handling of buftargs. * Handling of buftargs.
*/ */
......
...@@ -196,7 +196,7 @@ xfs_da3_node_write_verify( ...@@ -196,7 +196,7 @@ xfs_da3_node_write_verify(
if (bip) if (bip)
hdr3->info.lsn = cpu_to_be64(bip->bli_item.li_lsn); hdr3->info.lsn = cpu_to_be64(bip->bli_item.li_lsn);
xfs_update_cksum(bp->b_addr, BBTOB(bp->b_length), XFS_DA3_NODE_CRC_OFF); xfs_buf_update_cksum(bp, XFS_DA3_NODE_CRC_OFF);
} }
/* /*
......
...@@ -117,7 +117,7 @@ xfs_dir3_block_write_verify( ...@@ -117,7 +117,7 @@ xfs_dir3_block_write_verify(
if (bip) if (bip)
hdr3->lsn = cpu_to_be64(bip->bli_item.li_lsn); hdr3->lsn = cpu_to_be64(bip->bli_item.li_lsn);
xfs_update_cksum(bp->b_addr, BBTOB(bp->b_length), XFS_DIR3_DATA_CRC_OFF); xfs_buf_update_cksum(bp, XFS_DIR3_DATA_CRC_OFF);
} }
const struct xfs_buf_ops xfs_dir3_block_buf_ops = { const struct xfs_buf_ops xfs_dir3_block_buf_ops = {
......
...@@ -295,7 +295,7 @@ xfs_dir3_data_write_verify( ...@@ -295,7 +295,7 @@ xfs_dir3_data_write_verify(
if (bip) if (bip)
hdr3->lsn = cpu_to_be64(bip->bli_item.li_lsn); hdr3->lsn = cpu_to_be64(bip->bli_item.li_lsn);
xfs_update_cksum(bp->b_addr, BBTOB(bp->b_length), XFS_DIR3_DATA_CRC_OFF); xfs_buf_update_cksum(bp, XFS_DIR3_DATA_CRC_OFF);
} }
const struct xfs_buf_ops xfs_dir3_data_buf_ops = { const struct xfs_buf_ops xfs_dir3_data_buf_ops = {
......
...@@ -208,7 +208,7 @@ __write_verify( ...@@ -208,7 +208,7 @@ __write_verify(
if (bip) if (bip)
hdr3->info.lsn = cpu_to_be64(bip->bli_item.li_lsn); hdr3->info.lsn = cpu_to_be64(bip->bli_item.li_lsn);
xfs_update_cksum(bp->b_addr, BBTOB(bp->b_length), XFS_DIR3_LEAF_CRC_OFF); xfs_buf_update_cksum(bp, XFS_DIR3_LEAF_CRC_OFF);
} }
static void static void
......
...@@ -143,7 +143,7 @@ xfs_dir3_free_write_verify( ...@@ -143,7 +143,7 @@ xfs_dir3_free_write_verify(
if (bip) if (bip)
hdr3->lsn = cpu_to_be64(bip->bli_item.li_lsn); hdr3->lsn = cpu_to_be64(bip->bli_item.li_lsn);
xfs_update_cksum(bp->b_addr, BBTOB(bp->b_length), XFS_DIR3_FREE_CRC_OFF); xfs_buf_update_cksum(bp, XFS_DIR3_FREE_CRC_OFF);
} }
const struct xfs_buf_ops xfs_dir3_free_buf_ops = { const struct xfs_buf_ops xfs_dir3_free_buf_ops = {
......
...@@ -1600,7 +1600,7 @@ xfs_agi_write_verify( ...@@ -1600,7 +1600,7 @@ xfs_agi_write_verify(
if (bip) if (bip)
XFS_BUF_TO_AGI(bp)->agi_lsn = cpu_to_be64(bip->bli_item.li_lsn); XFS_BUF_TO_AGI(bp)->agi_lsn = cpu_to_be64(bip->bli_item.li_lsn);
xfs_update_cksum(bp->b_addr, BBTOB(bp->b_length), XFS_AGI_CRC_OFF); xfs_buf_update_cksum(bp, XFS_AGI_CRC_OFF);
} }
const struct xfs_buf_ops xfs_agi_buf_ops = { const struct xfs_buf_ops xfs_agi_buf_ops = {
......
...@@ -673,7 +673,7 @@ xfs_sb_write_verify( ...@@ -673,7 +673,7 @@ xfs_sb_write_verify(
if (bip) if (bip)
XFS_BUF_TO_SBP(bp)->sb_lsn = cpu_to_be64(bip->bli_item.li_lsn); XFS_BUF_TO_SBP(bp)->sb_lsn = cpu_to_be64(bip->bli_item.li_lsn);
xfs_update_cksum(bp->b_addr, BBTOB(bp->b_length), XFS_SB_CRC_OFF); xfs_buf_update_cksum(bp, XFS_SB_CRC_OFF);
} }
const struct xfs_buf_ops xfs_sb_buf_ops = { const struct xfs_buf_ops xfs_sb_buf_ops = {
......
...@@ -161,7 +161,7 @@ xfs_symlink_write_verify( ...@@ -161,7 +161,7 @@ xfs_symlink_write_verify(
struct xfs_dsymlink_hdr *dsl = bp->b_addr; struct xfs_dsymlink_hdr *dsl = bp->b_addr;
dsl->sl_lsn = cpu_to_be64(bip->bli_item.li_lsn); dsl->sl_lsn = cpu_to_be64(bip->bli_item.li_lsn);
} }
xfs_update_cksum(bp->b_addr, BBTOB(bp->b_length), XFS_SYMLINK_CRC_OFF); xfs_buf_update_cksum(bp, XFS_SYMLINK_CRC_OFF);
} }
const struct xfs_buf_ops xfs_symlink_buf_ops = { const struct xfs_buf_ops xfs_symlink_buf_ops = {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment