Blame memkind-1.10.1/jemalloc/include/jemalloc/internal/extent_externs.h

Packit Service 7f3b24
#ifndef JEMALLOC_INTERNAL_EXTENT_EXTERNS_H
Packit Service 7f3b24
#define JEMALLOC_INTERNAL_EXTENT_EXTERNS_H
Packit Service 7f3b24
Packit Service 7f3b24
#include "jemalloc/internal/mutex.h"
Packit Service 7f3b24
#include "jemalloc/internal/mutex_pool.h"
Packit Service 7f3b24
#include "jemalloc/internal/ph.h"
Packit Service 7f3b24
#include "jemalloc/internal/rtree.h"
Packit Service 7f3b24
Packit Service 7f3b24
extern size_t opt_lg_extent_max_active_fit;
Packit Service 7f3b24
Packit Service 7f3b24
extern rtree_t extents_rtree;
Packit Service 7f3b24
extern const extent_hooks_t extent_hooks_default;
Packit Service 7f3b24
extern mutex_pool_t extent_mutex_pool;
Packit Service 7f3b24
Packit Service 7f3b24
extent_t *extent_alloc(tsdn_t *tsdn, arena_t *arena);
Packit Service 7f3b24
void extent_dalloc(tsdn_t *tsdn, arena_t *arena, extent_t *extent);
Packit Service 7f3b24
Packit Service 7f3b24
extent_hooks_t *extent_hooks_get(arena_t *arena);
Packit Service 7f3b24
extent_hooks_t *extent_hooks_set(tsd_t *tsd, arena_t *arena,
Packit Service 7f3b24
    extent_hooks_t *extent_hooks);
Packit Service 7f3b24
Packit Service 7f3b24
#ifdef JEMALLOC_JET
Packit Service 7f3b24
size_t extent_size_quantize_floor(size_t size);
Packit Service 7f3b24
size_t extent_size_quantize_ceil(size_t size);
Packit Service 7f3b24
#endif
Packit Service 7f3b24
Packit Service 7f3b24
ph_proto(, extent_avail_, extent_tree_t, extent_t)
Packit Service 7f3b24
ph_proto(, extent_heap_, extent_heap_t, extent_t)
Packit Service 7f3b24
Packit Service 7f3b24
bool extents_init(tsdn_t *tsdn, extents_t *extents, extent_state_t state,
Packit Service 7f3b24
    bool delay_coalesce);
Packit Service 7f3b24
extent_state_t extents_state_get(const extents_t *extents);
Packit Service 7f3b24
size_t extents_npages_get(extents_t *extents);
Packit Service 7f3b24
/* Get the number of extents in the given page size index. */
Packit Service 7f3b24
size_t extents_nextents_get(extents_t *extents, pszind_t ind);
Packit Service 7f3b24
/* Get the sum total bytes of the extents in the given page size index. */
Packit Service 7f3b24
size_t extents_nbytes_get(extents_t *extents, pszind_t ind);
Packit Service 7f3b24
extent_t *extents_alloc(tsdn_t *tsdn, arena_t *arena,
Packit Service 7f3b24
    extent_hooks_t **r_extent_hooks, extents_t *extents, void *new_addr,
Packit Service 7f3b24
    size_t size, size_t pad, size_t alignment, bool slab, szind_t szind,
Packit Service 7f3b24
    bool *zero, bool *commit);
Packit Service 7f3b24
void extents_dalloc(tsdn_t *tsdn, arena_t *arena,
Packit Service 7f3b24
    extent_hooks_t **r_extent_hooks, extents_t *extents, extent_t *extent);
Packit Service 7f3b24
extent_t *extents_evict(tsdn_t *tsdn, arena_t *arena,
Packit Service 7f3b24
    extent_hooks_t **r_extent_hooks, extents_t *extents, size_t npages_min);
Packit Service 7f3b24
void extents_prefork(tsdn_t *tsdn, extents_t *extents);
Packit Service 7f3b24
void extents_postfork_parent(tsdn_t *tsdn, extents_t *extents);
Packit Service 7f3b24
void extents_postfork_child(tsdn_t *tsdn, extents_t *extents);
Packit Service 7f3b24
extent_t *extent_alloc_wrapper(tsdn_t *tsdn, arena_t *arena,
Packit Service 7f3b24
    extent_hooks_t **r_extent_hooks, void *new_addr, size_t size, size_t pad,
Packit Service 7f3b24
    size_t alignment, bool slab, szind_t szind, bool *zero, bool *commit);
Packit Service 7f3b24
void extent_dalloc_gap(tsdn_t *tsdn, arena_t *arena, extent_t *extent);
Packit Service 7f3b24
void extent_dalloc_wrapper(tsdn_t *tsdn, arena_t *arena,
Packit Service 7f3b24
    extent_hooks_t **r_extent_hooks, extent_t *extent);
Packit Service 7f3b24
void extent_destroy_wrapper(tsdn_t *tsdn, arena_t *arena,
Packit Service 7f3b24
    extent_hooks_t **r_extent_hooks, extent_t *extent);
Packit Service 7f3b24
bool extent_commit_wrapper(tsdn_t *tsdn, arena_t *arena,
Packit Service 7f3b24
    extent_hooks_t **r_extent_hooks, extent_t *extent, size_t offset,
Packit Service 7f3b24
    size_t length);
Packit Service 7f3b24
bool extent_decommit_wrapper(tsdn_t *tsdn, arena_t *arena,
Packit Service 7f3b24
    extent_hooks_t **r_extent_hooks, extent_t *extent, size_t offset,
Packit Service 7f3b24
    size_t length);
Packit Service 7f3b24
bool extent_purge_lazy_wrapper(tsdn_t *tsdn, arena_t *arena,
Packit Service 7f3b24
    extent_hooks_t **r_extent_hooks, extent_t *extent, size_t offset,
Packit Service 7f3b24
    size_t length);
Packit Service 7f3b24
bool extent_purge_forced_wrapper(tsdn_t *tsdn, arena_t *arena,
Packit Service 7f3b24
    extent_hooks_t **r_extent_hooks, extent_t *extent, size_t offset,
Packit Service 7f3b24
    size_t length);
Packit Service 7f3b24
extent_t *extent_split_wrapper(tsdn_t *tsdn, arena_t *arena,
Packit Service 7f3b24
    extent_hooks_t **r_extent_hooks, extent_t *extent, size_t size_a,
Packit Service 7f3b24
    szind_t szind_a, bool slab_a, size_t size_b, szind_t szind_b, bool slab_b);
Packit Service 7f3b24
bool extent_merge_wrapper(tsdn_t *tsdn, arena_t *arena,
Packit Service 7f3b24
    extent_hooks_t **r_extent_hooks, extent_t *a, extent_t *b);
Packit Service 7f3b24
Packit Service 7f3b24
bool extent_boot(void);
Packit Service 7f3b24
Packit Service 7f3b24
void extent_util_stats_get(tsdn_t *tsdn, const void *ptr,
Packit Service 7f3b24
    size_t *nfree, size_t *nregs, size_t *size);
Packit Service 7f3b24
void extent_util_stats_verbose_get(tsdn_t *tsdn, const void *ptr,
Packit Service 7f3b24
    size_t *nfree, size_t *nregs, size_t *size,
Packit Service 7f3b24
    size_t *bin_nfree, size_t *bin_nregs, void **slabcur_addr);
Packit Service 7f3b24
Packit Service 7f3b24
#endif /* JEMALLOC_INTERNAL_EXTENT_EXTERNS_H */