mirror of
https://github.com/jemalloc/jemalloc.git
synced 2026-07-07 22:37:16 +03:00
Add forking handling for stats
This commit is contained in:
parent
508303077b
commit
f533ab6da6
3 changed files with 21 additions and 0 deletions
|
|
@ -44,5 +44,8 @@ bool stats_interval_accum(tsd_t *tsd, uint64_t bytes);
|
|||
void stats_print(write_cb_t *write_cb, void *cbopaque, const char *opts);
|
||||
|
||||
bool stats_boot(void);
|
||||
void stats_prefork(tsdn_t *tsdn);
|
||||
void stats_postfork_parent(tsdn_t *tsdn);
|
||||
void stats_postfork_child(tsdn_t *tsdn);
|
||||
|
||||
#endif /* JEMALLOC_INTERNAL_STATS_H */
|
||||
|
|
|
|||
|
|
@ -3989,6 +3989,7 @@ _malloc_prefork(void)
|
|||
}
|
||||
}
|
||||
prof_prefork1(tsd_tsdn(tsd));
|
||||
stats_prefork(tsd_tsdn(tsd));
|
||||
tsd_prefork(tsd);
|
||||
}
|
||||
|
||||
|
|
@ -4016,6 +4017,7 @@ _malloc_postfork(void)
|
|||
|
||||
witness_postfork_parent(tsd_witness_tsdp_get(tsd));
|
||||
/* Release all mutexes, now that fork() has completed. */
|
||||
stats_postfork_parent(tsd_tsdn(tsd));
|
||||
for (i = 0, narenas = narenas_total_get(); i < narenas; i++) {
|
||||
arena_t *arena;
|
||||
|
||||
|
|
@ -4045,6 +4047,7 @@ jemalloc_postfork_child(void) {
|
|||
|
||||
witness_postfork_child(tsd_witness_tsdp_get(tsd));
|
||||
/* Release all mutexes, now that fork() has completed. */
|
||||
stats_postfork_child(tsd_tsdn(tsd));
|
||||
for (i = 0, narenas = narenas_total_get(); i < narenas; i++) {
|
||||
arena_t *arena;
|
||||
|
||||
|
|
|
|||
15
src/stats.c
15
src/stats.c
|
|
@ -1526,3 +1526,18 @@ stats_boot(void) {
|
|||
|
||||
return counter_accum_init(&stats_interval_accumulated, stats_interval);
|
||||
}
|
||||
|
||||
void
|
||||
stats_prefork(tsdn_t *tsdn) {
|
||||
counter_prefork(tsdn, &stats_interval_accumulated);
|
||||
}
|
||||
|
||||
void
|
||||
stats_postfork_parent(tsdn_t *tsdn) {
|
||||
counter_postfork_parent(tsdn, &stats_interval_accumulated);
|
||||
}
|
||||
|
||||
void
|
||||
stats_postfork_child(tsdn_t *tsdn) {
|
||||
counter_postfork_child(tsdn, &stats_interval_accumulated);
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue