1/******************************************************************************/
2#ifdef JEMALLOC_H_TYPES
3
4typedef struct extent_node_s extent_node_t;
5
6#endif /* JEMALLOC_H_TYPES */
7/******************************************************************************/
8#ifdef JEMALLOC_H_STRUCTS
9
10/* Tree of extents. */
11struct extent_node_s {
12	/* Linkage for the size/address-ordered tree. */
13	rb_node(extent_node_t)	link_szad;
14
15	/* Linkage for the address-ordered tree. */
16	rb_node(extent_node_t)	link_ad;
17
18	/* Profile counters, used for huge objects. */
19	prof_ctx_t		*prof_ctx;
20
21	/* Pointer to the extent that this tree node is responsible for. */
22	void			*addr;
23
24	/* Total region size. */
25	size_t			size;
26
27	/* Arena from which this extent came, if any */
28	arena_t			*arena;
29
30	/* True if zero-filled; used by chunk recycling code. */
31	bool			zeroed;
32};
33typedef rb_tree(extent_node_t) extent_tree_t;
34
35#endif /* JEMALLOC_H_STRUCTS */
36/******************************************************************************/
37#ifdef JEMALLOC_H_EXTERNS
38
39rb_proto(, extent_tree_szad_, extent_tree_t, extent_node_t)
40
41rb_proto(, extent_tree_ad_, extent_tree_t, extent_node_t)
42
43#endif /* JEMALLOC_H_EXTERNS */
44/******************************************************************************/
45#ifdef JEMALLOC_H_INLINES
46
47#endif /* JEMALLOC_H_INLINES */
48/******************************************************************************/
49
50