[PATCH 4/5] xfs: remove m_litino

Felix Blyakher felixb at sgi.com
Thu Mar 26 17:41:16 CDT 2009


On Mar 18, 2009, at 4:41 AM, Christoph Hellwig wrote:

> With the upcoming v3 inodes the inode data/attr area size needs to be
> calculated for each specific inode, so we can't cache it in the  
> superblock
> anymore.

The change looks fine. But what is "v3 inodes"? I'm sure it's been
mentioned on the list, I'm just missing the history.

Reviewed-by: Felix Blyakher <felixb at sgi.com>

>
>
>
> Signed-off-by: Christoph Hellwig <hch at lst.de>
>
> Index: xfs/fs/xfs/xfs_dinode.h
> ===================================================================
> --- xfs.orig/fs/xfs/xfs_dinode.h	2009-02-19 20:44:20.755069389 +0100
> +++ xfs/fs/xfs/xfs_dinode.h	2009-03-18 07:37:16.652977839 +0100
> @@ -103,7 +103,9 @@ typedef enum xfs_dinode_fmt {
> /*
>  * Inode size for given fs.
>  */
> -#define	XFS_LITINO(mp)	((mp)->m_litino)
> +#define XFS_LITINO(mp) \
> +	((int)(((mp)->m_sb.sb_inodesize) - sizeof(struct xfs_dinode)))
> +
> #define	XFS_BROOT_SIZE_ADJ	\
> 	(XFS_BTREE_LBLOCK_LEN - sizeof(xfs_bmdr_block_t))
>
> Index: xfs/fs/xfs/xfs_mount.c
> ===================================================================
> --- xfs.orig/fs/xfs/xfs_mount.c	2009-03-18 07:37:15.633978066 +0100
> +++ xfs/fs/xfs/xfs_mount.c	2009-03-18 07:37:20.566978952 +0100
> @@ -651,7 +651,6 @@ xfs_mount_common(xfs_mount_t *mp, xfs_sb
> 	mp->m_sectbb_log = sbp->sb_sectlog - BBSHIFT;
> 	mp->m_agno_log = xfs_highbit32(sbp->sb_agcount - 1) + 1;
> 	mp->m_agino_log = sbp->sb_inopblog + sbp->sb_agblklog;
> -	mp->m_litino = sbp->sb_inodesize - sizeof(struct xfs_dinode);
> 	mp->m_blockmask = sbp->sb_blocksize - 1;
> 	mp->m_blockwsize = sbp->sb_blocksize >> XFS_WORDLOG;
> 	mp->m_blockwmask = mp->m_blockwsize - 1;
> Index: xfs/fs/xfs/xfs_mount.h
> ===================================================================
> --- xfs.orig/fs/xfs/xfs_mount.h	2009-03-18 07:37:16.077856262 +0100
> +++ xfs/fs/xfs/xfs_mount.h	2009-03-18 07:37:20.585978718 +0100
> @@ -203,7 +203,6 @@ typedef struct xfs_mount {
> 	uint			m_attr_node_ents; /* #entries in attr danode */
> 	int			m_ialloc_inos;	/* inodes in inode allocation */
> 	int			m_ialloc_blks;	/* blocks in inode allocation */
> -	int			m_litino;	/* size of inode union area */
> 	int			m_inoalign_mask;/* mask sb_inoalignmt if used */
> 	uint			m_qflags;	/* quota status flags */
> 	xfs_trans_reservations_t m_reservations;/* precomputed res values */
>
> _______________________________________________
> xfs mailing list
> xfs at oss.sgi.com
> http://oss.sgi.com/mailman/listinfo/xfs




More information about the xfs mailing list