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