diff options
Diffstat (limited to 'include/jemalloc/internal')
-rw-r--r-- | include/jemalloc/internal/arena.h | 8 | ||||
-rw-r--r-- | include/jemalloc/internal/chunk.h | 31 | ||||
-rw-r--r-- | include/jemalloc/internal/private_symbols.txt | 6 |
3 files changed, 24 insertions, 21 deletions
diff --git a/include/jemalloc/internal/arena.h b/include/jemalloc/internal/arena.h index 56f7857..f60b9d6 100644 --- a/include/jemalloc/internal/arena.h +++ b/include/jemalloc/internal/arena.h @@ -246,8 +246,8 @@ struct arena_s { ql_head(extent_t) extent_cache; malloc_mutex_t extent_cache_mtx; - /* User-configurable chunk hook functions. */ - chunk_hooks_t chunk_hooks; + /* User-configurable extent hook functions. */ + extent_hooks_t extent_hooks; /* bins is used to store heaps of free regions. */ arena_bin_t bins[NBINS]; @@ -279,10 +279,10 @@ extern ssize_t opt_decay_time; extern const arena_bin_info_t arena_bin_info[NBINS]; extent_t *arena_chunk_cache_alloc(tsdn_t *tsdn, arena_t *arena, - chunk_hooks_t *chunk_hooks, void *new_addr, size_t size, size_t alignment, + extent_hooks_t *extent_hooks, void *new_addr, size_t size, size_t alignment, bool *zero); void arena_chunk_cache_dalloc(tsdn_t *tsdn, arena_t *arena, - chunk_hooks_t *chunk_hooks, extent_t *extent); + extent_hooks_t *extent_hooks, extent_t *extent); void arena_chunk_cache_maybe_insert(arena_t *arena, extent_t *extent, bool cache); void arena_chunk_cache_maybe_remove(arena_t *arena, extent_t *extent, diff --git a/include/jemalloc/internal/chunk.h b/include/jemalloc/internal/chunk.h index 6f50302..10f2ae7 100644 --- a/include/jemalloc/internal/chunk.h +++ b/include/jemalloc/internal/chunk.h @@ -38,33 +38,36 @@ extern size_t chunksize; extern size_t chunksize_mask; /* (chunksize - 1). */ extern size_t chunk_npages; -extern const chunk_hooks_t chunk_hooks_default; +extern const extent_hooks_t extent_hooks_default; -chunk_hooks_t chunk_hooks_get(tsdn_t *tsdn, arena_t *arena); -chunk_hooks_t chunk_hooks_set(tsdn_t *tsdn, arena_t *arena, - const chunk_hooks_t *chunk_hooks); +extent_hooks_t extent_hooks_get(tsdn_t *tsdn, arena_t *arena); +extent_hooks_t extent_hooks_set(tsdn_t *tsdn, arena_t *arena, + const extent_hooks_t *extent_hooks); extent_t *chunk_alloc_cache(tsdn_t *tsdn, arena_t *arena, - chunk_hooks_t *chunk_hooks, void *new_addr, size_t usize, size_t pad, + extent_hooks_t *extent_hooks, void *new_addr, size_t usize, size_t pad, size_t alignment, bool *zero, bool slab); extent_t *chunk_alloc_wrapper(tsdn_t *tsdn, arena_t *arena, - chunk_hooks_t *chunk_hooks, void *new_addr, size_t usize, size_t pad, + extent_hooks_t *extent_hooks, void *new_addr, size_t usize, size_t pad, size_t alignment, bool *zero, bool *commit, bool slab); void chunk_dalloc_cache(tsdn_t *tsdn, arena_t *arena, - chunk_hooks_t *chunk_hooks, extent_t *extent); + extent_hooks_t *extent_hooks, extent_t *extent); void chunk_dalloc_wrapper(tsdn_t *tsdn, arena_t *arena, - chunk_hooks_t *chunk_hooks, extent_t *extent); + extent_hooks_t *extent_hooks, extent_t *extent); bool chunk_commit_wrapper(tsdn_t *tsdn, arena_t *arena, - chunk_hooks_t *chunk_hooks, extent_t *extent, size_t offset, size_t length); + extent_hooks_t *extent_hooks, extent_t *extent, size_t offset, + size_t length); bool chunk_decommit_wrapper(tsdn_t *tsdn, arena_t *arena, - chunk_hooks_t *chunk_hooks, extent_t *extent, size_t offset, size_t length); + extent_hooks_t *extent_hooks, extent_t *extent, size_t offset, + size_t length); bool chunk_purge_wrapper(tsdn_t *tsdn, arena_t *arena, - chunk_hooks_t *chunk_hooks, extent_t *extent, size_t offset, size_t length); + extent_hooks_t *extent_hooks, extent_t *extent, size_t offset, + size_t length); extent_t *chunk_split_wrapper(tsdn_t *tsdn, arena_t *arena, - chunk_hooks_t *chunk_hooks, extent_t *extent, size_t size_a, size_t usize_a, - size_t size_b, size_t usize_b); + extent_hooks_t *extent_hooks, extent_t *extent, size_t size_a, + size_t usize_a, size_t size_b, size_t usize_b); bool chunk_merge_wrapper(tsdn_t *tsdn, arena_t *arena, - chunk_hooks_t *chunk_hooks, extent_t *a, extent_t *b); + extent_hooks_t *extent_hooks, extent_t *a, extent_t *b); bool chunk_boot(void); void chunk_prefork(tsdn_t *tsdn); void chunk_postfork_parent(tsdn_t *tsdn); diff --git a/include/jemalloc/internal/private_symbols.txt b/include/jemalloc/internal/private_symbols.txt index cab0fc5..b5fd4c0 100644 --- a/include/jemalloc/internal/private_symbols.txt +++ b/include/jemalloc/internal/private_symbols.txt @@ -131,9 +131,6 @@ chunk_dss_postfork_parent chunk_dss_prec_get chunk_dss_prec_set chunk_dss_prefork -chunk_hooks_default -chunk_hooks_get -chunk_hooks_set chunk_in_dss chunk_lookup chunk_merge_wrapper @@ -185,6 +182,9 @@ extent_heap_insert extent_heap_new extent_heap_remove extent_heap_remove_first +extent_hooks_default +extent_hooks_get +extent_hooks_set extent_init extent_last_get extent_past_get |