X-Git-Url: https://git.libre-soc.org/?a=blobdiff_plain;f=src%2Fgallium%2Fauxiliary%2Futil%2Fu_mm.c;h=bd4c4e1b1060b3edd67545b1516a7beb7eecb717;hb=6691ba1fe8e54c6ce5c6b4424c8096a351fda932;hp=4b75d4ba1d0155f9129663ab3b557a1cdb2458d2;hpb=7549a8397b310acf672f97a08c8e7d866cdf492c;p=mesa.git diff --git a/src/gallium/auxiliary/util/u_mm.c b/src/gallium/auxiliary/util/u_mm.c index 4b75d4ba1d0..bd4c4e1b106 100644 --- a/src/gallium/auxiliary/util/u_mm.c +++ b/src/gallium/auxiliary/util/u_mm.c @@ -34,18 +34,25 @@ void u_mmDumpMemInfo(const struct mem_block *heap) { debug_printf("Memory heap %p:\n", (void *) heap); - if (heap == 0) { + if (heap == NULL) { debug_printf(" heap == 0\n"); } else { const struct mem_block *p; + int total_used = 0, total_free = 0; for (p = heap->next; p != heap; p = p->next) { debug_printf(" Offset:%08x, Size:%08x, %c%c\n", p->ofs, p->size, p->free ? 'F':'.', p->reserved ? 'R':'.'); + if (p->free) + total_free += p->size; + else + total_used += p->size; } + debug_printf("'\nMemory stats: total = %d, used = %d, free = %d\n", + total_used + total_free, total_used, total_free); debug_printf("\nFree list:\n"); for (p = heap->next_free; p != heap; p = p->next_free) { @@ -217,7 +224,7 @@ u_mmFindBlock(struct mem_block *heap, int start) } -static INLINE int +static inline int Join2Blocks(struct mem_block *p) { /* XXX there should be some assertions here */