}
sb = &mbuf.m_sb;
- libxfs_sb_from_disk(sb, XFS_BUF_TO_SBP(sbp));
+ libxfs_sb_from_disk(sb, sbp->b_addr);
/* Do it again, now with proper length and verifier */
libxfs_buf_relse(sbp);
}
/* copy SB from buffer to in-core, converting architecture as we go */
- libxfs_sb_from_disk(&xmount.m_sb, XFS_BUF_TO_SBP(bp));
+ libxfs_sb_from_disk(&xmount.m_sb, bp->b_addr);
libxfs_buf_relse(bp);
sbp = &xmount.m_sb;
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;
#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, \
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;
{
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;
/*
* 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;
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! */
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;
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;
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);
}
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);
struct xfs_mount *mp)
{
struct xfs_buf *buf;
+ struct xfs_dsb *dsb;
int error;
/* rewrite the last superblock */
progname, mp->m_sb.sb_agcount - 1);
exit(1);
}
- XFS_BUF_TO_SBP(buf)->sb_rootino = cpu_to_be64(mp->m_sb.sb_rootino);
+ dsb = buf->b_addr;
+ dsb->sb_rootino = cpu_to_be64(mp->m_sb.sb_rootino);
libxfs_buf_mark_dirty(buf);
libxfs_buf_relse(buf);
progname, (mp->m_sb.sb_agcount - 1) / 2);
exit(1);
}
- XFS_BUF_TO_SBP(buf)->sb_rootino = cpu_to_be64(mp->m_sb.sb_rootino);
+ dsb = buf->b_addr;
+ dsb->sb_rootino = cpu_to_be64(mp->m_sb.sb_rootino);
libxfs_buf_mark_dirty(buf);
libxfs_buf_relse(buf);
}
struct xfs_mount mbuf = {};
struct xfs_mount *mp = &mbuf;
struct xfs_sb *sbp = &mp->m_sb;
+ struct xfs_dsb *dsb;
struct fs_topology ft = {};
struct cli_params cli = {
.xi = &xi,
buf = libxfs_getsb(mp);
if (!buf || buf->b_error)
exit(1);
- (XFS_BUF_TO_SBP(buf))->sb_inprogress = 0;
+ dsb = buf->b_addr;
+ dsb->sb_inprogress = 0;
libxfs_buf_mark_dirty(buf);
libxfs_buf_relse(buf);
struct xfs_sb *sb,
xfs_agnumber_t i)
{
- struct xfs_dsb *dsb = XFS_BUF_TO_SBP(sbuf);
+ struct xfs_dsb *dsb = sbuf->b_addr;
int do_bzero = 0;
int size;
char *ip;
update_sb_version(mp);
- libxfs_sb_to_disk(XFS_BUF_TO_SBP(bp), &mp->m_sb);
+ libxfs_sb_to_disk(bp->b_addr, &mp->m_sb);
libxfs_buf_mark_dirty(bp);
libxfs_buf_relse(bp);
}
objname = _("root superblock");
goto out_free_sb;
}
- libxfs_sb_from_disk(sb, XFS_BUF_TO_SBP(sbbuf));
+ libxfs_sb_from_disk(sb, sbbuf->b_addr);
error = salvage_buffer(mp->m_dev,
XFS_AG_DADDR(mp, agno, XFS_AGF_DADDR(mp)),
if (sb_dirty && !no_modify) {
if (agno == 0)
memcpy(&mp->m_sb, sb, sizeof(xfs_sb_t));
- libxfs_sb_to_disk(XFS_BUF_TO_SBP(sbbuf), sb);
+ libxfs_sb_to_disk(sbbuf->b_addr, sb);
libxfs_buf_mark_dirty(sbbuf);
libxfs_buf_relse(sbbuf);
} else
error = -libxfs_sb_read_secondary(mp, NULL, agno, &bp);
if (error)
continue;
- libxfs_sb_from_disk(&sb, XFS_BUF_TO_SBP(bp));
+ libxfs_sb_from_disk(&sb, bp->b_addr);
libxfs_buf_relse(bp);
calc_rootino = libxfs_ialloc_calc_rootino(mp, sb.sb_unit);
if (!sbp)
do_error(_("couldn't get superblock\n"));
- dsb = XFS_BUF_TO_SBP(sbp);
+ dsb = sbp->b_addr;
if (be16_to_cpu(dsb->sb_qflags) & XFS_ALL_QUOTA_CHKD) {
do_warn(_("Note - quota info will be regenerated on next "