Get rid of lock overlap in prof_recent_alloc_reset
This commit is contained in:
parent
bd3be8e0b1
commit
7b67ed0b5a
@ -182,12 +182,15 @@ prof_recent_alloc_reset(tsd_t *tsd, edata_t *edata) {
|
|||||||
if (dalloc_tctx != NULL) {
|
if (dalloc_tctx != NULL) {
|
||||||
nstime_update(&recent->dalloc_time);
|
nstime_update(&recent->dalloc_time);
|
||||||
recent->dalloc_tctx = dalloc_tctx;
|
recent->dalloc_tctx = dalloc_tctx;
|
||||||
|
dalloc_tctx = NULL;
|
||||||
}
|
}
|
||||||
} else if (dalloc_tctx != NULL) {
|
}
|
||||||
|
malloc_mutex_unlock(tsd_tsdn(tsd), &prof_recent_alloc_mtx);
|
||||||
|
|
||||||
|
if (dalloc_tctx != NULL) {
|
||||||
/* We lost the rase - the allocation record was just gone. */
|
/* We lost the rase - the allocation record was just gone. */
|
||||||
decrement_recent_count(tsd, dalloc_tctx);
|
decrement_recent_count(tsd, dalloc_tctx);
|
||||||
}
|
}
|
||||||
malloc_mutex_unlock(tsd_tsdn(tsd), &prof_recent_alloc_mtx);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
Loading…
Reference in New Issue
Block a user