extent.h revision 7de92767c20cb72c94609b9c78985526fb84a679
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 /* True if zero-filled; used by chunk recycling code. */ 28 bool zeroed; 29}; 30typedef rb_tree(extent_node_t) extent_tree_t; 31 32#endif /* JEMALLOC_H_STRUCTS */ 33/******************************************************************************/ 34#ifdef JEMALLOC_H_EXTERNS 35 36rb_proto(, extent_tree_szad_, extent_tree_t, extent_node_t) 37 38rb_proto(, extent_tree_ad_, extent_tree_t, extent_node_t) 39 40#endif /* JEMALLOC_H_EXTERNS */ 41/******************************************************************************/ 42#ifdef JEMALLOC_H_INLINES 43 44#endif /* JEMALLOC_H_INLINES */ 45/******************************************************************************/ 46 47