Initialize arenas_tsd before setting it.
Reported by: Ethan Burns, Rich Prohaska, Tudor Bosman
This commit is contained in:
parent
f576c63f1e
commit
8e6f8b490d
@ -769,6 +769,14 @@ malloc_init_hard(void)
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
if (malloc_mutex_init(&arenas_lock))
|
||||||
|
return (true);
|
||||||
|
|
||||||
|
if (pthread_key_create(&arenas_tsd, arenas_cleanup) != 0) {
|
||||||
|
malloc_mutex_unlock(&init_lock);
|
||||||
|
return (true);
|
||||||
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Create enough scaffolding to allow recursive allocation in
|
* Create enough scaffolding to allow recursive allocation in
|
||||||
* malloc_ncpus().
|
* malloc_ncpus().
|
||||||
@ -795,14 +803,6 @@ malloc_init_hard(void)
|
|||||||
ARENA_SET(arenas[0]);
|
ARENA_SET(arenas[0]);
|
||||||
arenas[0]->nthreads++;
|
arenas[0]->nthreads++;
|
||||||
|
|
||||||
if (malloc_mutex_init(&arenas_lock))
|
|
||||||
return (true);
|
|
||||||
|
|
||||||
if (pthread_key_create(&arenas_tsd, arenas_cleanup) != 0) {
|
|
||||||
malloc_mutex_unlock(&init_lock);
|
|
||||||
return (true);
|
|
||||||
}
|
|
||||||
|
|
||||||
#ifdef JEMALLOC_PROF
|
#ifdef JEMALLOC_PROF
|
||||||
if (prof_boot2()) {
|
if (prof_boot2()) {
|
||||||
malloc_mutex_unlock(&init_lock);
|
malloc_mutex_unlock(&init_lock);
|
||||||
|
Loading…
Reference in New Issue
Block a user