Extents: Break extent-struct/arena interactions

Specifically, the extent_arena_[g|s]et functions and the address randomization.

These are the only things that tie the extent struct itself to the arena code.
This commit is contained in:
David T. Goldblatt
2019-09-20 18:20:22 -07:00
committed by David Goldblatt
parent 529cfe2abc
commit 41187bdfb0
9 changed files with 106 additions and 83 deletions

View File

@@ -2612,7 +2612,8 @@ arenas_lookup_ctl(tsd_t *tsd, const size_t *mib,
if (extent == NULL)
goto label_return;
arena = extent_arena_get(extent);
arena = atomic_load_p(&arenas[extent_arena_ind_get(extent)],
ATOMIC_RELAXED);
if (arena == NULL)
goto label_return;