mirror of
https://github.com/jemalloc/jemalloc.git
synced 2026-06-20 19:05:38 +03:00
Fix/refactor tcaches synchronization.
Synchronize tcaches with tcaches_mtx rather than ctl_mtx. Add missing
synchronization for tcache flushing. This bug was introduced by
1cb181ed63 (Implement explicit tcache
support.), which was first released in 4.0.0.
This commit is contained in:
parent
d0e93ada51
commit
1b6e43507e
6 changed files with 102 additions and 30 deletions
|
|
@ -469,6 +469,9 @@ tcache_flush
|
|||
tcache_get
|
||||
tcache_get_hard
|
||||
tcache_maxclass
|
||||
tcache_prefork
|
||||
tcache_postfork_child
|
||||
tcache_postfork_parent
|
||||
tcache_salloc
|
||||
tcache_stats_merge
|
||||
tcaches
|
||||
|
|
|
|||
|
|
@ -43,5 +43,8 @@ bool tcaches_create(tsd_t *tsd, unsigned *r_ind);
|
|||
void tcaches_flush(tsd_t *tsd, unsigned ind);
|
||||
void tcaches_destroy(tsd_t *tsd, unsigned ind);
|
||||
bool tcache_boot(tsdn_t *tsdn);
|
||||
void tcache_prefork(tsdn_t *tsdn);
|
||||
void tcache_postfork_parent(tsdn_t *tsdn);
|
||||
void tcache_postfork_child(tsdn_t *tsdn);
|
||||
|
||||
#endif /* JEMALLOC_INTERNAL_TCACHE_EXTERNS_H */
|
||||
|
|
|
|||
|
|
@ -17,21 +17,22 @@ typedef int witness_comp_t (const witness_t *, void *, const witness_t *,
|
|||
|
||||
#define WITNESS_RANK_INIT 1U
|
||||
#define WITNESS_RANK_CTL 1U
|
||||
#define WITNESS_RANK_ARENAS 2U
|
||||
#define WITNESS_RANK_TCACHES 2U
|
||||
#define WITNESS_RANK_ARENAS 3U
|
||||
|
||||
#define WITNESS_RANK_PROF_DUMP 3U
|
||||
#define WITNESS_RANK_PROF_BT2GCTX 4U
|
||||
#define WITNESS_RANK_PROF_TDATAS 5U
|
||||
#define WITNESS_RANK_PROF_TDATA 6U
|
||||
#define WITNESS_RANK_PROF_GCTX 7U
|
||||
#define WITNESS_RANK_PROF_DUMP 4U
|
||||
#define WITNESS_RANK_PROF_BT2GCTX 5U
|
||||
#define WITNESS_RANK_PROF_TDATAS 6U
|
||||
#define WITNESS_RANK_PROF_TDATA 7U
|
||||
#define WITNESS_RANK_PROF_GCTX 8U
|
||||
|
||||
#define WITNESS_RANK_ARENA 8U
|
||||
#define WITNESS_RANK_ARENA_EXTENTS 9U
|
||||
#define WITNESS_RANK_ARENA_EXTENT_CACHE 10
|
||||
#define WITNESS_RANK_ARENA 9U
|
||||
#define WITNESS_RANK_ARENA_EXTENTS 10U
|
||||
#define WITNESS_RANK_ARENA_EXTENT_CACHE 11U
|
||||
|
||||
#define WITNESS_RANK_RTREE_ELM 11U
|
||||
#define WITNESS_RANK_RTREE 12U
|
||||
#define WITNESS_RANK_BASE 13U
|
||||
#define WITNESS_RANK_RTREE_ELM 12U
|
||||
#define WITNESS_RANK_RTREE 13U
|
||||
#define WITNESS_RANK_BASE 14U
|
||||
|
||||
#define WITNESS_RANK_LEAF 0xffffffffU
|
||||
#define WITNESS_RANK_ARENA_BIN WITNESS_RANK_LEAF
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue