diff options
author | aravind <aravind@fb.com> | 2014-05-05 15:16:56 -0700 |
---|---|---|
committer | Jason Evans <je@fb.com> | 2014-05-12 10:46:03 -0700 |
commit | fb7fe50a88ca9bde74e9a401ae17ad3b15bbae28 (patch) | |
tree | e11f2d87ef6721c9025e98bd7730d01b6f39f1da /include/jemalloc/internal/chunk.h | |
parent | 4bbd11b78932cdae1fe8a856141f5837f5b4c621 (diff) | |
download | jemalloc-fb7fe50a88ca9bde74e9a401ae17ad3b15bbae28.tar.gz |
Add support for user-specified chunk allocators/deallocators.
Add new mallctl endpoints "arena<i>.chunk.alloc" and
"arena<i>.chunk.dealloc" to allow userspace to configure
jemalloc's chunk allocator and deallocator on a per-arena
basis.
Diffstat (limited to 'include/jemalloc/internal/chunk.h')
-rw-r--r-- | include/jemalloc/internal/chunk.h | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/include/jemalloc/internal/chunk.h b/include/jemalloc/internal/chunk.h index 87d8700..cea0e8a 100644 --- a/include/jemalloc/internal/chunk.h +++ b/include/jemalloc/internal/chunk.h @@ -43,10 +43,12 @@ extern size_t chunk_npages; extern size_t map_bias; /* Number of arena chunk header pages. */ extern size_t arena_maxclass; /* Max size class for arenas. */ -void *chunk_alloc(size_t size, size_t alignment, bool base, bool *zero, - dss_prec_t dss_prec); +void *chunk_alloc(arena_t *arena, size_t size, size_t alignment, bool base, + bool *zero, dss_prec_t dss_prec); +void *chunk_alloc_default(size_t size, size_t alignment, bool *zero, + unsigned arena_ind); void chunk_unmap(void *chunk, size_t size); -void chunk_dealloc(void *chunk, size_t size, bool unmap); +void chunk_dealloc(arena_t *arena, void *chunk, size_t size, bool unmap); bool chunk_boot(void); void chunk_prefork(void); void chunk_postfork_parent(void); |