1 typedef struct extent_hooks_s extent_hooks_t;
5 * extent_alloc(extent_hooks_t *extent_hooks, void *new_addr, size_t size,
6 * size_t alignment, bool *zero, bool *commit, unsigned arena_ind);
8 typedef void *(extent_alloc_t)(extent_hooks_t *, void *, size_t, size_t, bool *,
13 * extent_dalloc(extent_hooks_t *extent_hooks, void *addr, size_t size,
14 * bool committed, unsigned arena_ind);
16 typedef bool (extent_dalloc_t)(extent_hooks_t *, void *, size_t, bool,
21 * extent_destroy(extent_hooks_t *extent_hooks, void *addr, size_t size,
22 * bool committed, unsigned arena_ind);
24 typedef void (extent_destroy_t)(extent_hooks_t *, void *, size_t, bool,
29 * extent_commit(extent_hooks_t *extent_hooks, void *addr, size_t size,
30 * size_t offset, size_t length, unsigned arena_ind);
32 typedef bool (extent_commit_t)(extent_hooks_t *, void *, size_t, size_t, size_t,
37 * extent_decommit(extent_hooks_t *extent_hooks, void *addr, size_t size,
38 * size_t offset, size_t length, unsigned arena_ind);
40 typedef bool (extent_decommit_t)(extent_hooks_t *, void *, size_t, size_t,
45 * extent_purge(extent_hooks_t *extent_hooks, void *addr, size_t size,
46 * size_t offset, size_t length, unsigned arena_ind);
48 typedef bool (extent_purge_t)(extent_hooks_t *, void *, size_t, size_t, size_t,
53 * extent_split(extent_hooks_t *extent_hooks, void *addr, size_t size,
54 * size_t size_a, size_t size_b, bool committed, unsigned arena_ind);
56 typedef bool (extent_split_t)(extent_hooks_t *, void *, size_t, size_t, size_t,
61 * extent_merge(extent_hooks_t *extent_hooks, void *addr_a, size_t size_a,
62 * void *addr_b, size_t size_b, bool committed, unsigned arena_ind);
64 typedef bool (extent_merge_t)(extent_hooks_t *, void *, size_t, void *, size_t,
67 struct extent_hooks_s {
68 extent_alloc_t *alloc;
69 extent_dalloc_t *dalloc;
70 extent_destroy_t *destroy;
71 extent_commit_t *commit;
72 extent_decommit_t *decommit;
73 extent_purge_t *purge_lazy;
74 extent_purge_t *purge_forced;
75 extent_split_t *split;
76 extent_merge_t *merge;