aboutsummaryrefslogtreecommitdiff
path: root/include/jemalloc/internal/chunk.h
diff options
context:
space:
mode:
authoraravind <aravind@fb.com>2014-05-05 15:16:56 -0700
committerJason Evans <je@fb.com>2014-05-12 10:46:03 -0700
commitfb7fe50a88ca9bde74e9a401ae17ad3b15bbae28 (patch)
treee11f2d87ef6721c9025e98bd7730d01b6f39f1da /include/jemalloc/internal/chunk.h
parent4bbd11b78932cdae1fe8a856141f5837f5b4c621 (diff)
downloadjemalloc-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.h8
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);