Initialize prof idump counter once rather than once per arena
This commit is contained in:
parent
e10e5059e8
commit
8be5584494
@ -74,7 +74,6 @@ void prof_cnt_all(uint64_t *curobjs, uint64_t *curbytes, uint64_t *accumobjs,
|
|||||||
#endif
|
#endif
|
||||||
int prof_getpid(void);
|
int prof_getpid(void);
|
||||||
void prof_get_default_filename(tsdn_t *tsdn, char *filename, uint64_t ind);
|
void prof_get_default_filename(tsdn_t *tsdn, char *filename, uint64_t ind);
|
||||||
bool prof_accum_init(void);
|
|
||||||
bool prof_idump_accum(tsdn_t *tsdn, uint64_t accumbytes);
|
bool prof_idump_accum(tsdn_t *tsdn, uint64_t accumbytes);
|
||||||
void prof_idump(tsdn_t *tsdn);
|
void prof_idump(tsdn_t *tsdn);
|
||||||
bool prof_mdump(tsd_t *tsd, const char *filename);
|
bool prof_mdump(tsd_t *tsd, const char *filename);
|
||||||
|
@ -1463,12 +1463,6 @@ arena_new(tsdn_t *tsdn, unsigned ind, extent_hooks_t *extent_hooks) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (config_prof) {
|
|
||||||
if (prof_accum_init()) {
|
|
||||||
goto label_error;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
atomic_store_u(&arena->dss_prec, (unsigned)extent_dss_prec_get(),
|
atomic_store_u(&arena->dss_prec, (unsigned)extent_dss_prec_get(),
|
||||||
ATOMIC_RELAXED);
|
ATOMIC_RELAXED);
|
||||||
|
|
||||||
|
@ -641,8 +641,8 @@ prof_fdump(void) {
|
|||||||
prof_dump(tsd, false, filename, opt_prof_leak);
|
prof_dump(tsd, false, filename, opt_prof_leak);
|
||||||
}
|
}
|
||||||
|
|
||||||
bool
|
static bool
|
||||||
prof_accum_init(void) {
|
prof_idump_accum_init(void) {
|
||||||
cassert(config_prof);
|
cassert(config_prof);
|
||||||
|
|
||||||
return counter_accum_init(&prof_idump_accumulated, prof_interval);
|
return counter_accum_init(&prof_idump_accumulated, prof_interval);
|
||||||
@ -1021,6 +1021,10 @@ prof_boot2(tsd_t *tsd, base_t *base) {
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (prof_idump_accum_init()) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
if (malloc_mutex_init(&prof_dump_filename_mtx, "prof_dump_filename",
|
if (malloc_mutex_init(&prof_dump_filename_mtx, "prof_dump_filename",
|
||||||
WITNESS_RANK_PROF_DUMP_FILENAME, malloc_mutex_rank_exclusive)) {
|
WITNESS_RANK_PROF_DUMP_FILENAME, malloc_mutex_rank_exclusive)) {
|
||||||
return true;
|
return true;
|
||||||
|
Loading…
Reference in New Issue
Block a user