xqmstat information under __xfsstats is used directly by the /proc/fs/xfs/xqmstat show method, which makes use of struct offsets to print out the values. Currently, the function is setup to start printing values from the offset of the last marker before xqmstat, so, an update to __xfsstats structure may also require an update of xqmstat_proc_show() function. By adding a new constant, we concentrate any updates do __xfsstats structure fields locally to the file xfs_stats.h, reducing the likelyhood of future bugs if an update to xqmstat_proc_show is forgotten as have happened before. Signed-off-by: Carlos Maiolino <cmaiolino@xxxxxxxxxx> --- fs/xfs/xfs_stats.c | 2 +- fs/xfs/xfs_stats.h | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/fs/xfs/xfs_stats.c b/fs/xfs/xfs_stats.c index 740ac9674848..09121c36a062 100644 --- a/fs/xfs/xfs_stats.c +++ b/fs/xfs/xfs_stats.c @@ -119,7 +119,7 @@ static int xqmstat_proc_show(struct seq_file *m, void *v) int j; seq_printf(m, "qm"); - for (j = XFSSTAT_END_REFCOUNT; j < XFSSTAT_END_XQMSTAT; j++) + for (j = XFSSTAT_START_XQMSTAT; j < XFSSTAT_END_XQMSTAT; j++) seq_printf(m, " %u", counter_val(xfsstats.xs_stats, j)); seq_putc(m, '\n'); return 0; diff --git a/fs/xfs/xfs_stats.h b/fs/xfs/xfs_stats.h index 130db070e4d8..102e794addac 100644 --- a/fs/xfs/xfs_stats.h +++ b/fs/xfs/xfs_stats.h @@ -147,6 +147,7 @@ struct __xfsstats { uint32_t xs_rmap_2[__XBTS_MAX]; #define XFSSTAT_END_REFCOUNT (XFSSTAT_END_RMAP_V2 + __XBTS_MAX) uint32_t xs_refcbt_2[__XBTS_MAX]; +#define XFSSTAT_START_XQMSTAT XFSSTAT_END_REFCOUNT #define XFSSTAT_END_XQMSTAT (XFSSTAT_END_REFCOUNT + 6) uint32_t xs_qm_dqreclaims; uint32_t xs_qm_dqreclaim_misses; -- 2.17.1