Lines Matching refs:node

142 chunk_register(const void *chunk, const extent_node_t *node)  in chunk_register()  argument
145 assert(extent_node_addr_get(node) == chunk); in chunk_register()
147 if (rtree_set(&chunks_rtree, (uintptr_t)chunk, node)) in chunk_register()
150 size_t size = extent_node_size_get(node); in chunk_register()
169 chunk_deregister(const void *chunk, const extent_node_t *node) in chunk_deregister() argument
176 size_t size = extent_node_size_get(node); in chunk_deregister()
206 extent_node_t *node; in chunk_recycle() local
228 node = extent_tree_ad_search(chunks_ad, &key); in chunk_recycle()
230 node = chunk_first_best_fit(arena, chunks_szad, chunks_ad, in chunk_recycle()
233 if (node == NULL || (new_addr != NULL && extent_node_size_get(node) < in chunk_recycle()
238 leadsize = ALIGNMENT_CEILING((uintptr_t)extent_node_addr_get(node), in chunk_recycle()
239 alignment) - (uintptr_t)extent_node_addr_get(node); in chunk_recycle()
241 assert(extent_node_size_get(node) >= leadsize + size); in chunk_recycle()
242 trailsize = extent_node_size_get(node) - leadsize - size; in chunk_recycle()
243 ret = (void *)((uintptr_t)extent_node_addr_get(node) + leadsize); in chunk_recycle()
244 zeroed = extent_node_zeroed_get(node); in chunk_recycle()
247 committed = extent_node_committed_get(node); in chunk_recycle()
252 chunk_hooks->split(extent_node_addr_get(node), in chunk_recycle()
253 extent_node_size_get(node), leadsize, size, false, arena->ind)) { in chunk_recycle()
258 extent_tree_szad_remove(chunks_szad, node); in chunk_recycle()
259 extent_tree_ad_remove(chunks_ad, node); in chunk_recycle()
260 arena_chunk_cache_maybe_remove(arena, node, cache); in chunk_recycle()
263 extent_node_size_set(node, leadsize); in chunk_recycle()
264 extent_tree_szad_insert(chunks_szad, node); in chunk_recycle()
265 extent_tree_ad_insert(chunks_ad, node); in chunk_recycle()
266 arena_chunk_cache_maybe_insert(arena, node, cache); in chunk_recycle()
267 node = NULL; in chunk_recycle()
273 if (dalloc_node && node != NULL) in chunk_recycle()
274 arena_node_dalloc(arena, node); in chunk_recycle()
281 if (node == NULL) { in chunk_recycle()
282 node = arena_node_alloc(arena); in chunk_recycle()
283 if (node == NULL) { in chunk_recycle()
291 extent_node_init(node, arena, (void *)((uintptr_t)(ret) + size), in chunk_recycle()
293 extent_tree_szad_insert(chunks_szad, node); in chunk_recycle()
294 extent_tree_ad_insert(chunks_ad, node); in chunk_recycle()
295 arena_chunk_cache_maybe_insert(arena, node, cache); in chunk_recycle()
296 node = NULL; in chunk_recycle()
306 assert(dalloc_node || node != NULL); in chunk_recycle()
307 if (dalloc_node && node != NULL) in chunk_recycle()
308 arena_node_dalloc(arena, node); in chunk_recycle()
472 extent_node_t *node, *prev; in chunk_record() local
483 node = extent_tree_ad_nsearch(chunks_ad, &key); in chunk_record()
485 if (node != NULL && extent_node_addr_get(node) == in chunk_record()
486 extent_node_addr_get(&key) && extent_node_committed_get(node) == in chunk_record()
488 extent_node_addr_get(node), extent_node_size_get(node), false, in chunk_record()
495 extent_tree_szad_remove(chunks_szad, node); in chunk_record()
496 arena_chunk_cache_maybe_remove(arena, node, cache); in chunk_record()
497 extent_node_addr_set(node, chunk); in chunk_record()
498 extent_node_size_set(node, size + extent_node_size_get(node)); in chunk_record()
499 extent_node_zeroed_set(node, extent_node_zeroed_get(node) && in chunk_record()
501 extent_tree_szad_insert(chunks_szad, node); in chunk_record()
502 arena_chunk_cache_maybe_insert(arena, node, cache); in chunk_record()
505 node = arena_node_alloc(arena); in chunk_record()
506 if (node == NULL) { in chunk_record()
519 extent_node_init(node, arena, chunk, size, !unzeroed, in chunk_record()
521 extent_tree_ad_insert(chunks_ad, node); in chunk_record()
522 extent_tree_szad_insert(chunks_szad, node); in chunk_record()
523 arena_chunk_cache_maybe_insert(arena, node, cache); in chunk_record()
527 prev = extent_tree_ad_prev(chunks_ad, node); in chunk_record()
541 extent_tree_szad_remove(chunks_szad, node); in chunk_record()
542 arena_chunk_cache_maybe_remove(arena, node, cache); in chunk_record()
543 extent_node_addr_set(node, extent_node_addr_get(prev)); in chunk_record()
544 extent_node_size_set(node, extent_node_size_get(prev) + in chunk_record()
545 extent_node_size_get(node)); in chunk_record()
546 extent_node_zeroed_set(node, extent_node_zeroed_get(prev) && in chunk_record()
547 extent_node_zeroed_get(node)); in chunk_record()
548 extent_tree_szad_insert(chunks_szad, node); in chunk_record()
549 arena_chunk_cache_maybe_insert(arena, node, cache); in chunk_record()