From 0588a9cb6275025a62d89b94bcde1a9bb13e9c69 Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Sat, 18 Apr 2009 08:44:10 +0000 Subject: * malloc/malloc.c (malloc_info): Output address space information. --- malloc/malloc.c | 32 +++++++++++++++++++++++++++++--- 1 file changed, 29 insertions(+), 3 deletions(-) (limited to 'malloc') diff --git a/malloc/malloc.c b/malloc/malloc.c index c9141f7fb8..0b9facefd4 100644 --- a/malloc/malloc.c +++ b/malloc/malloc.c @@ -6251,6 +6251,8 @@ malloc_info (int options, FILE *fp) size_t total_fastavail = 0; size_t total_system = 0; size_t total_max_system = 0; + size_t total_aspace = 0; + size_t total_aspace_mprotect = 0; void mi_arena (mstate ar_ptr) { @@ -6363,10 +6365,31 @@ malloc_info (int options, FILE *fp) "\n\n" "\n" "\n" - "\n" - "\n", + "\n", nfastblocks, fastavail, nblocks, avail, ar_ptr->system_mem, ar_ptr->max_system_mem); + + if (ar_ptr != &main_arena) + { + heap_info *heap = heap_for_ptr(top(ar_ptr)); + fprintf (fp, + "\n" + "\n", + heap->size, heap->mprotect_size); + total_aspace += heap->size; + total_aspace_mprotect += heap->mprotect_size; + } + else + { + fprintf (fp, + "\n" + "\n", + ar_ptr->system_mem, ar_ptr->system_mem); + total_aspace += ar_ptr->system_mem; + total_aspace_mprotect += ar_ptr->system_mem; + } + + fputs ("\n", fp); } fputs ("\n", fp); @@ -6385,9 +6408,12 @@ malloc_info (int options, FILE *fp) "\n" "\n" "\n" + "\n" + "\n" "\n", total_nfastblocks, total_fastavail, total_nblocks, total_avail, - total_system, total_max_system); + total_system, total_max_system, + total_aspace, total_aspace_mprotect); return 0; } -- cgit 1.4.1