Merge remote-tracking branch 'origin/master' into pipe-video
[mesa.git] / src / gallium / auxiliary / util / u_mm.c
index 45ce257b5e5102154e2007ea8643c9ea874c8acb..82f83702d1e4f01213ff7926e7c6824a2ff32dd5 100644 (file)
@@ -24,7 +24,7 @@
 
 
 #include "pipe/p_compiler.h"
-#include "pipe/p_debug.h"
+#include "util/u_debug.h"
 
 #include "util/u_memory.h"
 #include "util/u_mm.h"
 void
 u_mmDumpMemInfo(const struct mem_block *heap)
 {
-   debug_printf("Memory heap %p:\n", (void *)heap);
+   debug_printf("Memory heap %p:\n", (void *) heap);
    if (heap == 0) {
       debug_printf("  heap == 0\n");
-   } else {
+   }
+   else {
       const struct mem_block *p;
-
-      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':'.');
+      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) {
-        debug_printf(" FREE Offset:%08x, Size:%08x, %c%c\n",p->ofs,p->size,
-                p->free ? 'F':'.',
-                p->reserved ? 'R':'.');
+      for (p = heap->next_free; p != heap; p = p->next_free) {
+        debug_printf(" FREE Offset:%08x, Size:%08x, %c%c\n", p->ofs, p->size,
+                      p->free ? 'F':'.',
+                      p->reserved ? 'R':'.');
       }
 
    }
    debug_printf("End of memory blocks\n");
 }
 
+
 struct mem_block *
 u_mmInit(int ofs, int size)
 {