Lines Matching defs:chunk_hooks
52 static void chunk_record(arena_t *arena, chunk_hooks_t *chunk_hooks,
62 return (arena->chunk_hooks);
68 chunk_hooks_t chunk_hooks;
71 chunk_hooks = chunk_hooks_get_locked(arena);
74 return (chunk_hooks);
78 chunk_hooks_set(arena_t *arena, const chunk_hooks_t *chunk_hooks)
83 old_chunk_hooks = arena->chunk_hooks;
88 * entirety of arena->chunk_hooks), and stale reads do not affect
96 u.n = &arena->chunk_hooks.n; \
97 atomic_write_p(u.v, chunk_hooks->n); \
113 chunk_hooks_assure_initialized_impl(arena_t *arena, chunk_hooks_t *chunk_hooks,
119 if (memcmp(chunk_hooks, &uninitialized_hooks, sizeof(chunk_hooks_t)) ==
121 *chunk_hooks = locked ? chunk_hooks_get_locked(arena) :
128 chunk_hooks_t *chunk_hooks)
131 chunk_hooks_assure_initialized_impl(arena, chunk_hooks, true);
135 chunk_hooks_assure_initialized(arena_t *arena, chunk_hooks_t *chunk_hooks)
138 chunk_hooks_assure_initialized_impl(arena, chunk_hooks, false);
200 chunk_recycle(arena_t *arena, chunk_hooks_t *chunk_hooks,
223 chunk_hooks_assure_initialized_locked(arena, chunk_hooks);
252 chunk_hooks->split(extent_node_addr_get(node),
271 if (chunk_hooks->split(ret, size + trailsize, size,
276 chunk_record(arena, chunk_hooks, chunks_szad, chunks_ad,
285 chunk_record(arena, chunk_hooks, chunks_szad,
298 if (!committed && chunk_hooks->commit(ret, size, 0, size, arena->ind)) {
300 chunk_record(arena, chunk_hooks, chunks_szad, chunks_ad, cache,
383 chunk_alloc_cache(arena_t *arena, chunk_hooks_t *chunk_hooks, void *new_addr,
395 ret = chunk_recycle(arena, chunk_hooks, &arena->chunks_szad_cached,
439 chunk_alloc_retained(arena_t *arena, chunk_hooks_t *chunk_hooks, void *new_addr,
448 return (chunk_recycle(arena, chunk_hooks, &arena->chunks_szad_retained,
454 chunk_alloc_wrapper(arena_t *arena, chunk_hooks_t *chunk_hooks, void *new_addr,
459 chunk_hooks_assure_initialized(arena, chunk_hooks);
461 ret = chunk_alloc_retained(arena, chunk_hooks, new_addr, size,
464 ret = chunk_hooks->alloc(new_addr, size, alignment, zero,
470 if (config_valgrind && chunk_hooks->alloc != chunk_alloc_default)
476 chunk_record(arena_t *arena, chunk_hooks_t *chunk_hooks,
489 chunk_hooks_assure_initialized_locked(arena, chunk_hooks);
496 committed && !chunk_hooks->merge(chunk, size,
523 chunk_purge_wrapper(arena, chunk_hooks, chunk,
540 !chunk_hooks->merge(extent_node_addr_get(prev),
568 chunk_dalloc_cache(arena_t *arena, chunk_hooks_t *chunk_hooks, void *chunk,
577 chunk_record(arena, chunk_hooks, &arena->chunks_szad_cached,
593 chunk_dalloc_wrapper(arena_t *arena, chunk_hooks_t *chunk_hooks, void *chunk,
602 chunk_hooks_assure_initialized(arena, chunk_hooks);
604 if (!chunk_hooks->dalloc(chunk, size, committed, arena->ind))
608 committed = chunk_hooks->decommit(chunk, size, 0, size,
611 zeroed = !committed || !chunk_hooks->purge(chunk, size, 0, size,
613 chunk_record(arena, chunk_hooks, &arena->chunks_szad_retained,
651 chunk_purge_wrapper(arena_t *arena, chunk_hooks_t *chunk_hooks, void *chunk,
655 chunk_hooks_assure_initialized(arena, chunk_hooks);
656 return (chunk_hooks->purge(chunk, size, offset, length, arena->ind));