On Thu, Jun 16, 2016 at 06:20:26PM -0700, Darrick J. Wong wrote: > From: Dave Chinner <dchinner@xxxxxxxxxx> > > The rmap btree will require the same stats as all the other generic > btrees, so add al the code for that now. all > > Signed-off-by: Dave Chinner <dchinner@xxxxxxxxxx> > Signed-off-by: Dave Chinner <david@xxxxxxxxxxxxx> > --- Reviewed-by: Brian Foster <bfoster@xxxxxxxxxx> > fs/xfs/libxfs/xfs_btree.h | 5 +++-- > fs/xfs/xfs_stats.c | 1 + > fs/xfs/xfs_stats.h | 18 +++++++++++++++++- > 3 files changed, 21 insertions(+), 3 deletions(-) > > > diff --git a/fs/xfs/libxfs/xfs_btree.h b/fs/xfs/libxfs/xfs_btree.h > index 202fdd3..a29067c 100644 > --- a/fs/xfs/libxfs/xfs_btree.h > +++ b/fs/xfs/libxfs/xfs_btree.h > @@ -96,7 +96,7 @@ do { \ > case XFS_BTNUM_BMAP: __XFS_BTREE_STATS_INC(__mp, bmbt, stat); break; \ > case XFS_BTNUM_INO: __XFS_BTREE_STATS_INC(__mp, ibt, stat); break; \ > case XFS_BTNUM_FINO: __XFS_BTREE_STATS_INC(__mp, fibt, stat); break; \ > - case XFS_BTNUM_RMAP: break; \ > + case XFS_BTNUM_RMAP: __XFS_BTREE_STATS_INC(__mp, rmap, stat); break; \ > case XFS_BTNUM_MAX: ASSERT(0); __mp = __mp /* fucking gcc */ ; break; \ > } \ > } while (0) > @@ -117,7 +117,8 @@ do { \ > __XFS_BTREE_STATS_ADD(__mp, ibt, stat, val); break; \ > case XFS_BTNUM_FINO: \ > __XFS_BTREE_STATS_ADD(__mp, fibt, stat, val); break; \ > - case XFS_BTNUM_RMAP: break; \ > + case XFS_BTNUM_RMAP: \ > + __XFS_BTREE_STATS_ADD(__mp, rmap, stat, val); break; \ > case XFS_BTNUM_MAX: ASSERT(0); __mp = __mp /* fucking gcc */ ; break; \ > } \ > } while (0) > diff --git a/fs/xfs/xfs_stats.c b/fs/xfs/xfs_stats.c > index 8686df6..f04f547 100644 > --- a/fs/xfs/xfs_stats.c > +++ b/fs/xfs/xfs_stats.c > @@ -61,6 +61,7 @@ int xfs_stats_format(struct xfsstats __percpu *stats, char *buf) > { "bmbt2", XFSSTAT_END_BMBT_V2 }, > { "ibt2", XFSSTAT_END_IBT_V2 }, > { "fibt2", XFSSTAT_END_FIBT_V2 }, > + { "rmapbt", XFSSTAT_END_RMAP_V2 }, > /* we print both series of quota information together */ > { "qm", XFSSTAT_END_QM }, > }; > diff --git a/fs/xfs/xfs_stats.h b/fs/xfs/xfs_stats.h > index 483b0ef..657865f 100644 > --- a/fs/xfs/xfs_stats.h > +++ b/fs/xfs/xfs_stats.h > @@ -197,7 +197,23 @@ struct xfsstats { > __uint32_t xs_fibt_2_alloc; > __uint32_t xs_fibt_2_free; > __uint32_t xs_fibt_2_moves; > -#define XFSSTAT_END_XQMSTAT (XFSSTAT_END_FIBT_V2+6) > +#define XFSSTAT_END_RMAP_V2 (XFSSTAT_END_FIBT_V2+15) > + __uint32_t xs_rmap_2_lookup; > + __uint32_t xs_rmap_2_compare; > + __uint32_t xs_rmap_2_insrec; > + __uint32_t xs_rmap_2_delrec; > + __uint32_t xs_rmap_2_newroot; > + __uint32_t xs_rmap_2_killroot; > + __uint32_t xs_rmap_2_increment; > + __uint32_t xs_rmap_2_decrement; > + __uint32_t xs_rmap_2_lshift; > + __uint32_t xs_rmap_2_rshift; > + __uint32_t xs_rmap_2_split; > + __uint32_t xs_rmap_2_join; > + __uint32_t xs_rmap_2_alloc; > + __uint32_t xs_rmap_2_free; > + __uint32_t xs_rmap_2_moves; > +#define XFSSTAT_END_XQMSTAT (XFSSTAT_END_RMAP_V2+6) > __uint32_t xs_qm_dqreclaims; > __uint32_t xs_qm_dqreclaim_misses; > __uint32_t xs_qm_dquot_dups; > > _______________________________________________ > xfs mailing list > xfs@xxxxxxxxxxx > http://oss.sgi.com/mailman/listinfo/xfs _______________________________________________ xfs mailing list xfs@xxxxxxxxxxx http://oss.sgi.com/mailman/listinfo/xfs