Lines Matching refs:heap
46 util_vma_heap_init(struct util_vma_heap *heap, in util_vma_heap_init() argument
49 list_inithead(&heap->holes); in util_vma_heap_init()
50 util_vma_heap_free(heap, start, size); in util_vma_heap_init()
53 heap->alloc_high = true; in util_vma_heap_init()
57 util_vma_heap_finish(struct util_vma_heap *heap) in util_vma_heap_finish() argument
59 util_vma_foreach_hole_safe(hole, heap) in util_vma_heap_finish()
65 util_vma_heap_validate(struct util_vma_heap *heap) in util_vma_heap_validate() argument
68 util_vma_foreach_hole(hole, heap) { in util_vma_heap_validate()
72 if (&hole->link == heap->holes.next) { in util_vma_heap_validate()
91 #define util_vma_heap_validate(heap) argument
142 util_vma_heap_alloc(struct util_vma_heap *heap, in util_vma_heap_alloc() argument
149 util_vma_heap_validate(heap); in util_vma_heap_alloc()
151 if (heap->alloc_high) { in util_vma_heap_alloc()
152 util_vma_foreach_hole_safe(hole, heap) { in util_vma_heap_alloc()
173 util_vma_heap_validate(heap); in util_vma_heap_alloc()
177 util_vma_foreach_hole_safe_rev(hole, heap) { in util_vma_heap_alloc()
194 util_vma_heap_validate(heap); in util_vma_heap_alloc()
204 util_vma_heap_alloc_addr(struct util_vma_heap *heap, in util_vma_heap_alloc_addr() argument
221 util_vma_foreach_hole_safe(hole, heap) { in util_vma_heap_alloc_addr()
242 util_vma_heap_free(struct util_vma_heap *heap, in util_vma_heap_free() argument
258 util_vma_heap_validate(heap); in util_vma_heap_free()
262 util_vma_foreach_hole(hole, heap) { in util_vma_heap_free()
303 list_add(&hole->link, &heap->holes); in util_vma_heap_free()
306 util_vma_heap_validate(heap); in util_vma_heap_free()
310 util_vma_heap_print(struct util_vma_heap *heap, FILE *fp, in util_vma_heap_print() argument
316 util_vma_foreach_hole(hole, heap) { in util_vma_heap_print()