Fix defrag to support sharded bins in arena (added in v5.2.1)

See 37b8913925
This commit is contained in:
Yoav Steinberg 2021-10-10 12:44:55 +03:00
parent 91bc78a8b8
commit 908d3bdad9
1 changed files with 2 additions and 1 deletions

View File

@ -232,7 +232,8 @@ iget_defrag_hint(tsdn_t *tsdn, void* ptr, int *bin_util, int *run_util) {
extent_t *slab = iealloc(tsdn, ptr);
arena_t *arena = extent_arena_get(slab);
szind_t binind = extent_szind_get(slab);
bin_t *bin = &arena->bins[binind];
unsigned binshard = extent_binshard_get(slab);
bin_t *bin = &arena->bins[binind].bin_shards[binshard];
malloc_mutex_lock(tsdn, &bin->lock);
/* don't bother moving allocations from the slab currently used for new allocations */
if (slab != bin->slabcur) {