On Fri, May 23, 2014 at 10:03:47AM +1000, Dave Chinner wrote: > From: Dave Chinner <dchinner@xxxxxxxxxx> > > Signed-off-by: Dave Chinner <dchinner@xxxxxxxxxx> > --- Are the state->blocksize and node_ents fields redundant with the associated geo fields? On a quick scan, it seems like they don't ever change. Patch looks fine either way... Reviewed-by: Brian Foster <bfoster@xxxxxxxxxx> > fs/xfs/xfs_attr.c | 8 ++++---- > fs/xfs/xfs_da_btree.c | 4 ++-- > fs/xfs/xfs_dir2.c | 3 --- > fs/xfs/xfs_dir2_node.c | 10 +++++----- > fs/xfs/xfs_mount.h | 2 -- > 5 files changed, 11 insertions(+), 16 deletions(-) > > diff --git a/fs/xfs/xfs_attr.c b/fs/xfs/xfs_attr.c > index c547498..8bb9ae6 100644 > --- a/fs/xfs/xfs_attr.c > +++ b/fs/xfs/xfs_attr.c > @@ -899,7 +899,7 @@ restart: > state->args = args; > state->mp = mp; > state->blocksize = state->mp->m_sb.sb_blocksize; > - state->node_ents = state->mp->m_attr_node_ents; > + state->node_ents = args->geo->node_ents; > > /* > * Search to see if name already exists, and get back a pointer > @@ -1078,7 +1078,7 @@ restart: > state->args = args; > state->mp = mp; > state->blocksize = state->mp->m_sb.sb_blocksize; > - state->node_ents = state->mp->m_attr_node_ents; > + state->node_ents = args->geo->node_ents; > state->inleaf = 0; > error = xfs_da3_node_lookup_int(state, &retval); > if (error) > @@ -1170,7 +1170,7 @@ xfs_attr_node_removename(xfs_da_args_t *args) > state->args = args; > state->mp = dp->i_mount; > state->blocksize = state->mp->m_sb.sb_blocksize; > - state->node_ents = state->mp->m_attr_node_ents; > + state->node_ents = args->geo->node_ents; > > /* > * Search to see if name exists, and get back a pointer to it. > @@ -1433,7 +1433,7 @@ xfs_attr_node_get(xfs_da_args_t *args) > state->args = args; > state->mp = args->dp->i_mount; > state->blocksize = state->mp->m_sb.sb_blocksize; > - state->node_ents = state->mp->m_attr_node_ents; > + state->node_ents = args->geo->node_ents; > > /* > * Search to see if name exists, and get back a pointer to it. > diff --git a/fs/xfs/xfs_da_btree.c b/fs/xfs/xfs_da_btree.c > index b9b007d..f935370 100644 > --- a/fs/xfs/xfs_da_btree.c > +++ b/fs/xfs/xfs_da_btree.c > @@ -167,8 +167,8 @@ xfs_da3_node_verify( > * we don't know if the node is for and attribute or directory tree, > * so only fail if the count is outside both bounds > */ > - if (ichdr.count > mp->m_dir_node_ents && > - ichdr.count > mp->m_attr_node_ents) > + if (ichdr.count > mp->m_dir_geo->node_ents && > + ichdr.count > mp->m_attr_geo->node_ents) > return false; > > /* XXX: hash order check? */ > diff --git a/fs/xfs/xfs_dir2.c b/fs/xfs/xfs_dir2.c > index 0230342..90d426d 100644 > --- a/fs/xfs/xfs_dir2.c > +++ b/fs/xfs/xfs_dir2.c > @@ -144,9 +144,6 @@ xfs_da_mount( > else > mp->m_dirnameops = &xfs_default_nameops; > > - /* XXX: these are to be removed as code is converted to use geo */ > - mp->m_dir_node_ents = mp->m_dir_geo->node_ents; > - mp->m_attr_node_ents = mp->m_attr_geo->node_ents; > return 0; > } > > diff --git a/fs/xfs/xfs_dir2_node.c b/fs/xfs/xfs_dir2_node.c > index de5b2996..eff6b8d 100644 > --- a/fs/xfs/xfs_dir2_node.c > +++ b/fs/xfs/xfs_dir2_node.c > @@ -1596,8 +1596,8 @@ xfs_dir2_node_addname( > state = xfs_da_state_alloc(); > state->args = args; > state->mp = args->dp->i_mount; > - state->blocksize = state->args->geo->blksize; > - state->node_ents = state->mp->m_dir_node_ents; > + state->blocksize = args->geo->blksize; > + state->node_ents = args->geo->node_ents; > /* > * Look up the name. We're not supposed to find it, but > * this gives us the insertion point. > @@ -2043,7 +2043,7 @@ xfs_dir2_node_lookup( > state->args = args; > state->mp = args->dp->i_mount; > state->blocksize = args->geo->blksize; > - state->node_ents = state->mp->m_dir_node_ents; > + state->node_ents = args->geo->node_ents; > /* > * Fill in the path to the entry in the cursor. > */ > @@ -2098,7 +2098,7 @@ xfs_dir2_node_removename( > state->args = args; > state->mp = args->dp->i_mount; > state->blocksize = args->geo->blksize; > - state->node_ents = state->mp->m_dir_node_ents; > + state->node_ents = args->geo->node_ents; > > /* Look up the entry we're deleting, set up the cursor. */ > error = xfs_da3_node_lookup_int(state, &rval); > @@ -2168,7 +2168,7 @@ xfs_dir2_node_replace( > state->args = args; > state->mp = args->dp->i_mount; > state->blocksize = args->geo->blksize; > - state->node_ents = state->mp->m_dir_node_ents; > + state->node_ents = args->geo->node_ents; > inum = args->inumber; > /* > * Lookup the entry to change in the btree. > diff --git a/fs/xfs/xfs_mount.h b/fs/xfs/xfs_mount.h > index 3b690c36..6d7e5d7 100644 > --- a/fs/xfs/xfs_mount.h > +++ b/fs/xfs/xfs_mount.h > @@ -134,8 +134,6 @@ typedef struct xfs_mount { > int m_fixedfsid[2]; /* unchanged for life of FS */ > uint m_dmevmask; /* DMI events for this FS */ > __uint64_t m_flags; /* global mount flags */ > - uint m_dir_node_ents; /* #entries in a dir danode */ > - 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_inoalign_mask;/* mask sb_inoalignmt if used */ > -- > 1.9.0 > > _______________________________________________ > xfs mailing list > xfs@xxxxxxxxxxx > http://oss.sgi.com/mailman/listinfo/xfs _______________________________________________ xfs mailing list xfs@xxxxxxxxxxx http://oss.sgi.com/mailman/listinfo/xfs