Tell edatas their creation arena immediately.

This avoids having to pass it in anywhere else.
This commit is contained in:
David Goldblatt
2020-02-03 13:33:05 -08:00
committed by David Goldblatt
parent 7c7b702064
commit 040eac77cc
4 changed files with 5 additions and 4 deletions

View File

@@ -188,13 +188,13 @@ bool
emap_split_prepare(tsdn_t *tsdn, emap_t *emap, rtree_ctx_t *rtree_ctx,
emap_split_prepare_t *split_prepare, edata_t *edata, size_t size_a,
szind_t szind_a, bool slab_a, edata_t *trail, size_t size_b,
szind_t szind_b, bool slab_b, unsigned ind_b) {
szind_t szind_b, bool slab_b) {
/*
* Note that while the trail mostly inherits its attributes from the
* extent to be split, it maintains its own arena ind -- this allows
* cross-arena edata interactions, such as occur in the range ecache.
*/
edata_init(trail, ind_b,
edata_init(trail, edata_arena_ind_get(trail),
(void *)((uintptr_t)edata_base_get(edata) + size_a), size_b,
slab_b, szind_b, edata_sn_get(edata), edata_state_get(edata),
edata_zeroed_get(edata), edata_committed_get(edata),