huge.h revision 59113bcc94b9fc7549611afb99ca99cad1a7f196
1/******************************************************************************/ 2#ifdef JEMALLOC_H_TYPES 3 4#endif /* JEMALLOC_H_TYPES */ 5/******************************************************************************/ 6#ifdef JEMALLOC_H_STRUCTS 7 8#endif /* JEMALLOC_H_STRUCTS */ 9/******************************************************************************/ 10#ifdef JEMALLOC_H_EXTERNS 11 12/* Huge allocation statistics. */ 13extern uint64_t huge_nmalloc; 14extern uint64_t huge_ndalloc; 15extern size_t huge_allocated; 16 17/* Protects chunk-related data structures. */ 18extern malloc_mutex_t huge_mtx; 19 20void *huge_malloc(arena_t *arena, size_t size, bool zero, 21 dss_prec_t dss_prec); 22void *huge_palloc(arena_t *arena, size_t size, size_t alignment, bool zero, 23 dss_prec_t dss_prec); 24bool huge_ralloc_no_move(void *ptr, size_t oldsize, size_t size, 25 size_t extra); 26void *huge_ralloc(arena_t *arena, void *ptr, size_t oldsize, size_t size, 27 size_t extra, size_t alignment, bool zero, bool try_tcache_dalloc, 28 dss_prec_t dss_prec); 29#ifdef JEMALLOC_JET 30typedef void (huge_dalloc_junk_t)(void *, size_t); 31extern huge_dalloc_junk_t *huge_dalloc_junk; 32#endif 33void huge_dalloc(void *ptr, bool unmap); 34size_t huge_salloc(const void *ptr); 35dss_prec_t huge_dss_prec_get(arena_t *arena); 36prof_ctx_t *huge_prof_ctx_get(const void *ptr); 37void huge_prof_ctx_set(const void *ptr, prof_ctx_t *ctx); 38bool huge_boot(void); 39void huge_prefork(void); 40void huge_postfork_parent(void); 41void huge_postfork_child(void); 42 43#endif /* JEMALLOC_H_EXTERNS */ 44/******************************************************************************/ 45#ifdef JEMALLOC_H_INLINES 46 47#endif /* JEMALLOC_H_INLINES */ 48/******************************************************************************/ 49