Lines Matching refs:heap
32 drm_private void mmDumpMemInfo(const struct mem_block *heap)
34 drmMsg("Memory heap %p:\n", (void *)heap);
35 if (heap == 0) {
36 drmMsg(" heap == 0\n");
40 for (p = heap->next; p != heap; p = p->next) {
48 for (p = heap->next_free; p != heap; p = p->next_free) {
60 struct mem_block *heap, *block;
65 heap = (struct mem_block *)calloc(1, sizeof(struct mem_block));
66 if (!heap)
71 free(heap);
75 heap->next = block;
76 heap->prev = block;
77 heap->next_free = block;
78 heap->prev_free = block;
80 block->heap = heap;
81 block->next = heap;
82 block->prev = heap;
83 block->next_free = heap;
84 block->prev_free = heap;
90 return heap;
108 newblock->heap = p->heap;
133 newblock->heap = p->heap;
163 drm_private struct mem_block *mmAllocMem(struct mem_block *heap, int size,
171 if (!heap || align2 < 0 || size <= 0)
174 for (p = heap->next_free; p != heap; p = p->next_free) {
186 if (p == heap)
199 /* NOTE: heap->free == 0 */
234 b->next_free = b->heap->next_free;
235 b->prev_free = b->heap;
240 if (b->prev != b->heap)
246 drm_private void mmDestroy(struct mem_block *heap)
250 if (!heap)
253 for (p = heap->next; p != heap;) {
259 free(heap);