Blame jemalloc/include/jemalloc/internal/jemalloc_internal_externs.h

Packit Service 724aca
#ifndef JEMALLOC_INTERNAL_EXTERNS_H
Packit Service 724aca
#define JEMALLOC_INTERNAL_EXTERNS_H
Packit Service 724aca
Packit Service 724aca
#include "jemalloc/internal/atomic.h"
Packit Service 724aca
#include "jemalloc/internal/tsd_types.h"
Packit Service 724aca
Packit Service 724aca
/* TSD checks this to set thread local slow state accordingly. */
Packit Service 724aca
extern bool malloc_slow;
Packit Service 724aca
Packit Service 724aca
/* Run-time options. */
Packit Service 724aca
extern bool opt_abort;
Packit Service 724aca
extern bool opt_abort_conf;
Packit Service 724aca
extern bool opt_confirm_conf;
Packit Service 724aca
extern const char *opt_junk;
Packit Service 724aca
extern bool opt_junk_alloc;
Packit Service 724aca
extern bool opt_junk_free;
Packit Service 724aca
extern bool opt_utrace;
Packit Service 724aca
extern bool opt_xmalloc;
Packit Service 724aca
extern bool opt_zero;
Packit Service 724aca
extern unsigned opt_narenas;
Packit Service 724aca
Packit Service 724aca
/* Number of CPUs. */
Packit Service 724aca
extern unsigned ncpus;
Packit Service 724aca
Packit Service 724aca
/* Number of arenas used for automatic multiplexing of threads and arenas. */
Packit Service 724aca
extern unsigned narenas_auto;
Packit Service 724aca
Packit Service 724aca
/* Base index for manual arenas. */
Packit Service 724aca
extern unsigned manual_arena_base;
Packit Service 724aca
Packit Service 724aca
/*
Packit Service 724aca
 * Arenas that are used to service external requests.  Not all elements of the
Packit Service 724aca
 * arenas array are necessarily used; arenas are created lazily as needed.
Packit Service 724aca
 */
Packit Service 724aca
extern atomic_p_t arenas[];
Packit Service 724aca
Packit Service 724aca
void *a0malloc(size_t size);
Packit Service 724aca
void a0dalloc(void *ptr);
Packit Service 724aca
void *bootstrap_malloc(size_t size);
Packit Service 724aca
void *bootstrap_calloc(size_t num, size_t size);
Packit Service 724aca
void bootstrap_free(void *ptr);
Packit Service 724aca
void arena_set(unsigned ind, arena_t *arena);
Packit Service 724aca
unsigned narenas_total_get(void);
Packit Service 724aca
arena_t *arena_init(tsdn_t *tsdn, unsigned ind, extent_hooks_t *extent_hooks);
Packit Service 724aca
arena_tdata_t *arena_tdata_get_hard(tsd_t *tsd, unsigned ind);
Packit Service 724aca
arena_t *arena_choose_hard(tsd_t *tsd, bool internal);
Packit Service 724aca
void arena_migrate(tsd_t *tsd, unsigned oldind, unsigned newind);
Packit Service 724aca
void iarena_cleanup(tsd_t *tsd);
Packit Service 724aca
void arena_cleanup(tsd_t *tsd);
Packit Service 724aca
void arenas_tdata_cleanup(tsd_t *tsd);
Packit Service 724aca
void jemalloc_prefork(void);
Packit Service 724aca
void jemalloc_postfork_parent(void);
Packit Service 724aca
void jemalloc_postfork_child(void);
Packit Service 724aca
bool malloc_initialized(void);
Packit Service 724aca
void je_sdallocx_noflags(void *ptr, size_t size);
Packit Service 724aca
Packit Service 724aca
#endif /* JEMALLOC_INTERNAL_EXTERNS_H */