diff --git a/include/jemalloc/internal/ctl_types.h b/include/jemalloc/internal/ctl_types.h index 1b5c76f9..065ccda5 100644 --- a/include/jemalloc/internal/ctl_types.h +++ b/include/jemalloc/internal/ctl_types.h @@ -2,7 +2,6 @@ #define JEMALLOC_INTERNAL_CTL_TYPES_H #define GLOBAL_PROF_MUTEXES \ - OP(base) \ OP(ctl) \ OP(prof) @@ -21,6 +20,7 @@ typedef enum { OP(extents_retained) \ OP(decay_dirty) \ OP(decay_muzzy) \ + OP(base) \ OP(tcache_list) typedef enum { diff --git a/src/arena.c b/src/arena.c index 3383a3b8..519111e5 100644 --- a/src/arena.c +++ b/src/arena.c @@ -318,6 +318,8 @@ arena_stats_merge(tsdn_t *tsdn, arena_t *arena, unsigned *nthreads, arena_prof_mutex_decay_dirty) READ_ARENA_MUTEX_PROF_DATA(decay_muzzy.mtx, arena_prof_mutex_decay_muzzy) + READ_ARENA_MUTEX_PROF_DATA(base->mtx, + arena_prof_mutex_base) #undef READ_ARENA_MUTEX_PROF_DATA for (szind_t i = 0; i < NBINS; i++) { diff --git a/src/ctl.c b/src/ctl.c index e2ee36a6..36f5634d 100644 --- a/src/ctl.c +++ b/src/ctl.c @@ -912,8 +912,6 @@ ctl_refresh(tsdn_t *tsdn) { malloc_mutex_prof_read(tsdn, &ctl_stats->mutex_prof_data[i], &mtx); \ malloc_mutex_unlock(tsdn, &mtx); - READ_GLOBAL_MUTEX_PROF_DATA(global_prof_mutex_base, - b0get()->mtx); if (config_prof && opt_prof) { READ_GLOBAL_MUTEX_PROF_DATA(global_prof_mutex_prof, bt2gctx_mtx); @@ -2460,12 +2458,12 @@ stats_mutexes_reset_ctl(tsd_t *tsd, const size_t *mib, size_t miblen, malloc_mutex_prof_data_reset(tsdn, &mtx); \ malloc_mutex_unlock(tsdn, &mtx); - /* Global mutexes: base, prof and ctl. */ - MUTEX_PROF_RESET(b0get()->mtx); + /* Global mutexes: ctl and prof. */ + MUTEX_PROF_RESET(ctl_mtx); if (config_prof && opt_prof) { MUTEX_PROF_RESET(bt2gctx_mtx); } - MUTEX_PROF_RESET(ctl_mtx); + /* Per arena mutexes. */ unsigned n = narenas_total_get(); @@ -2485,6 +2483,7 @@ stats_mutexes_reset_ctl(tsd_t *tsd, const size_t *mib, size_t miblen, if (config_tcache) { MUTEX_PROF_RESET(arena->tcache_ql_mtx); } + MUTEX_PROF_RESET(arena->base->mtx); for (szind_t i = 0; i < NBINS; i++) { arena_bin_t *bin = &arena->bins[i];