extent.h revision 7372b15a31c63ac5cb9ed8aeabc2a0a3c005e8bf
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};
27typedef rb_tree(extent_node_t) extent_tree_t;
28
29#endif /* JEMALLOC_H_STRUCTS */
30/******************************************************************************/
31#ifdef JEMALLOC_H_EXTERNS
32
33rb_proto(, extent_tree_szad_, extent_tree_t, extent_node_t)
34
35rb_proto(, extent_tree_ad_, extent_tree_t, extent_node_t)
36
37#endif /* JEMALLOC_H_EXTERNS */
38/******************************************************************************/
39#ifdef JEMALLOC_H_INLINES
40
41#endif /* JEMALLOC_H_INLINES */
42/******************************************************************************/
43
44