diff options
Diffstat (limited to 'fs/xfs/libxfs/xfs_ialloc.c')
| -rw-r--r-- | fs/xfs/libxfs/xfs_ialloc.c | 35 | 
1 files changed, 17 insertions, 18 deletions
diff --git a/fs/xfs/libxfs/xfs_ialloc.c b/fs/xfs/libxfs/xfs_ialloc.c index bf161e930f1d..7fcf62b324b0 100644 --- a/fs/xfs/libxfs/xfs_ialloc.c +++ b/fs/xfs/libxfs/xfs_ialloc.c @@ -105,7 +105,7 @@ xfs_inobt_get_rec(  	int				*stat)  {  	struct xfs_mount		*mp = cur->bc_mp; -	xfs_agnumber_t			agno = cur->bc_private.a.agno; +	xfs_agnumber_t			agno = cur->bc_ag.agno;  	union xfs_btree_rec		*rec;  	int				error;  	uint64_t			realfree; @@ -177,7 +177,7 @@ xfs_inobt_insert(  	xfs_btnum_t		btnum)  {  	struct xfs_btree_cur	*cur; -	struct xfs_agi		*agi = XFS_BUF_TO_AGI(agbp); +	struct xfs_agi		*agi = agbp->b_addr;  	xfs_agnumber_t		agno = be32_to_cpu(agi->agi_seqno);  	xfs_agino_t		thisino;  	int			i; @@ -304,7 +304,7 @@ xfs_ialloc_inode_init(  	 * That means for v3 inode we log the entire buffer rather than just the  	 * inode cores.  	 */ -	if (xfs_sb_version_hascrc(&mp->m_sb)) { +	if (xfs_sb_version_has_v3inode(&mp->m_sb)) {  		version = 3;  		ino = XFS_AGINO_TO_INO(mp, agno, XFS_AGB_TO_AGINO(mp, agbno)); @@ -339,7 +339,7 @@ xfs_ialloc_inode_init(  		xfs_buf_zero(fbuf, 0, BBTOB(fbuf->b_length));  		for (i = 0; i < M_IGEO(mp)->inodes_per_cluster; i++) {  			int	ioffset = i << mp->m_sb.sb_inodelog; -			uint	isize = xfs_dinode_size(version); +			uint	isize = XFS_DINODE_SIZE(&mp->m_sb);  			free = xfs_make_iptr(mp, fbuf, i);  			free->di_magic = cpu_to_be16(XFS_DINODE_MAGIC); @@ -525,7 +525,7 @@ xfs_inobt_insert_sprec(  	bool				merge)	/* merge or replace */  {  	struct xfs_btree_cur		*cur; -	struct xfs_agi			*agi = XFS_BUF_TO_AGI(agbp); +	struct xfs_agi			*agi = agbp->b_addr;  	xfs_agnumber_t			agno = be32_to_cpu(agi->agi_seqno);  	int				error;  	int				i; @@ -658,7 +658,7 @@ xfs_ialloc_ag_alloc(  	 * chunk of inodes.  If the filesystem is striped, this will fill  	 * an entire stripe unit with inodes.  	 */ -	agi = XFS_BUF_TO_AGI(agbp); +	agi = agbp->b_addr;  	newino = be32_to_cpu(agi->agi_newino);  	agno = be32_to_cpu(agi->agi_seqno);  	args.agbno = XFS_AGINO_TO_AGBNO(args.mp, newino) + @@ -1130,7 +1130,7 @@ xfs_dialloc_ag_inobt(  	xfs_ino_t		*inop)  {  	struct xfs_mount	*mp = tp->t_mountp; -	struct xfs_agi		*agi = XFS_BUF_TO_AGI(agbp); +	struct xfs_agi		*agi = agbp->b_addr;  	xfs_agnumber_t		agno = be32_to_cpu(agi->agi_seqno);  	xfs_agnumber_t		pagno = XFS_INO_TO_AGNO(mp, parent);  	xfs_agino_t		pagino = XFS_INO_TO_AGINO(mp, parent); @@ -1583,7 +1583,7 @@ xfs_dialloc_ag(  	xfs_ino_t		*inop)  {  	struct xfs_mount		*mp = tp->t_mountp; -	struct xfs_agi			*agi = XFS_BUF_TO_AGI(agbp); +	struct xfs_agi			*agi = agbp->b_addr;  	xfs_agnumber_t			agno = be32_to_cpu(agi->agi_seqno);  	xfs_agnumber_t			pagno = XFS_INO_TO_AGNO(mp, parent);  	xfs_agino_t			pagino = XFS_INO_TO_AGINO(mp, parent); @@ -1943,7 +1943,7 @@ xfs_difree_inobt(  	struct xfs_icluster		*xic,  	struct xfs_inobt_rec_incore	*orec)  { -	struct xfs_agi			*agi = XFS_BUF_TO_AGI(agbp); +	struct xfs_agi			*agi = agbp->b_addr;  	xfs_agnumber_t			agno = be32_to_cpu(agi->agi_seqno);  	struct xfs_perag		*pag;  	struct xfs_btree_cur		*cur; @@ -2079,7 +2079,7 @@ xfs_difree_finobt(  	xfs_agino_t			agino,  	struct xfs_inobt_rec_incore	*ibtrec) /* inobt record */  { -	struct xfs_agi			*agi = XFS_BUF_TO_AGI(agbp); +	struct xfs_agi			*agi = agbp->b_addr;  	xfs_agnumber_t			agno = be32_to_cpu(agi->agi_seqno);  	struct xfs_btree_cur		*cur;  	struct xfs_inobt_rec_incore	rec; @@ -2489,9 +2489,8 @@ xfs_ialloc_log_agi(  		sizeof(xfs_agi_t)  	};  #ifdef DEBUG -	xfs_agi_t		*agi;	/* allocation group header */ +	struct xfs_agi		*agi = bp->b_addr; -	agi = XFS_BUF_TO_AGI(bp);  	ASSERT(agi->agi_magicnum == cpu_to_be32(XFS_AGI_MAGIC));  #endif @@ -2523,14 +2522,13 @@ xfs_agi_verify(  	struct xfs_buf	*bp)  {  	struct xfs_mount *mp = bp->b_mount; -	struct xfs_agi	*agi = XFS_BUF_TO_AGI(bp); +	struct xfs_agi	*agi = bp->b_addr;  	int		i;  	if (xfs_sb_version_hascrc(&mp->m_sb)) {  		if (!uuid_equal(&agi->agi_uuid, &mp->m_sb.sb_meta_uuid))  			return __this_address; -		if (!xfs_log_check_lsn(mp, -				be64_to_cpu(XFS_BUF_TO_AGI(bp)->agi_lsn))) +		if (!xfs_log_check_lsn(mp, be64_to_cpu(agi->agi_lsn)))  			return __this_address;  	} @@ -2593,6 +2591,7 @@ xfs_agi_write_verify(  {  	struct xfs_mount	*mp = bp->b_mount;  	struct xfs_buf_log_item	*bip = bp->b_log_item; +	struct xfs_agi		*agi = bp->b_addr;  	xfs_failaddr_t		fa;  	fa = xfs_agi_verify(bp); @@ -2605,7 +2604,7 @@ xfs_agi_write_verify(  		return;  	if (bip) -		XFS_BUF_TO_AGI(bp)->agi_lsn = cpu_to_be64(bip->bli_item.li_lsn); +		agi->agi_lsn = cpu_to_be64(bip->bli_item.li_lsn);  	xfs_buf_update_cksum(bp, XFS_AGI_CRC_OFF);  } @@ -2661,7 +2660,7 @@ xfs_ialloc_read_agi(  	if (error)  		return error; -	agi = XFS_BUF_TO_AGI(*bpp); +	agi = (*bpp)->b_addr;  	pag = xfs_perag_get(mp, agno);  	if (!pag->pagi_init) {  		pag->pagi_freecount = be32_to_cpu(agi->agi_freecount); @@ -2873,7 +2872,7 @@ xfs_ialloc_setup_geometry(  	 * cannot change the behavior.  	 */  	igeo->inode_cluster_size_raw = XFS_INODE_BIG_CLUSTER_SIZE; -	if (xfs_sb_version_hascrc(&mp->m_sb)) { +	if (xfs_sb_version_has_v3inode(&mp->m_sb)) {  		int	new_size = igeo->inode_cluster_size_raw;  		new_size *= mp->m_sb.sb_inodesize / XFS_DINODE_MIN_SIZE;  |