Lines Matching refs:heap
36 drm_private void mmDumpMemInfo(const struct mem_block *heap)
38 drmMsg("Memory heap %p:\n", (void *)heap);
39 if (heap == 0) {
40 drmMsg(" heap == 0\n");
44 for (p = heap->next; p != heap; p = p->next) {
52 for (p = heap->next_free; p != heap; p = p->next_free) {
64 struct mem_block *heap, *block;
69 heap = (struct mem_block *)calloc(1, sizeof(struct mem_block));
70 if (!heap)
75 free(heap);
79 heap->next = block;
80 heap->prev = block;
81 heap->next_free = block;
82 heap->prev_free = block;
84 block->heap = heap;
85 block->next = heap;
86 block->prev = heap;
87 block->next_free = heap;
88 block->prev_free = heap;
94 return heap;
112 newblock->heap = p->heap;
137 newblock->heap = p->heap;
167 drm_private struct mem_block *mmAllocMem(struct mem_block *heap, int size,
175 if (!heap || align2 < 0 || size <= 0)
178 for (p = heap->next_free; p != heap; p = p->next_free) {
190 if (p == heap)
203 /* NOTE: heap->free == 0 */
238 b->next_free = b->heap->next_free;
239 b->prev_free = b->heap;
244 if (b->prev != b->heap)
250 drm_private void mmDestroy(struct mem_block *heap)
254 if (!heap)
257 for (p = heap->next; p != heap;) {
263 free(heap);