[commit: ghc] master: Include pinned memory in the stats for allocated memory (c19f2e3)

Simon Marlow <[email protected]>
Newsgroups gmane.comp.lang.haskell.cvs.ghc
Message-ID <[email protected]>
Repository : ssh://darcs.haskell.org//srv/darcs/ghc

On branch  : master

http://hackage.haskell.org/trac/ghc/changeset/c19f2e320a575a66d31c83d846ce3cc954c4ab3b

>---------------------------------------------------------------

commit c19f2e320a575a66d31c83d846ce3cc954c4ab3b
Author: Simon Marlow <[email protected]>
Date:   Fri Sep 21 13:20:37 2012 +0100

    Include pinned memory in the stats for allocated memory
    
    This broke with the changes to the pinned object handling in
    67f4ab7e6b7705a9d617c6109a8c5434ede13cae.

>---------------------------------------------------------------

 rts/sm/GC.c      |    2 +-
 rts/sm/Storage.c |    1 +
 2 files changed, 2 insertions(+), 1 deletions(-)

diff --git a/rts/sm/GC.c b/rts/sm/GC.c
index 03c3068..8b92ca8 100644
--- a/rts/sm/GC.c
+++ b/rts/sm/GC.c
@@ -290,7 +290,7 @@ GarbageCollect (nat collect_gen,
 
   // gather blocks allocated using allocatePinned() from each capability
   // and put them on the g0->large_object list.
-  collect_pinned_object_blocks();
+  allocated += collect_pinned_object_blocks();
 
   // Initialise all the generations/steps that we're collecting.
   for (g = 0; g <= N; g++) {
diff --git a/rts/sm/Storage.c b/rts/sm/Storage.c
index dd2ee31..e5258c2 100644
--- a/rts/sm/Storage.c
+++ b/rts/sm/Storage.c
@@ -764,6 +764,7 @@ allocatePinned (Capability *cap, W_ n)
         // g0->large_objects.
         if (bd != NULL) {
             dbl_link_onto(bd, &cap->pinned_object_blocks);
+            cap->total_allocated += bd->free - bd->start;
         }
 
         // We need to find another block.  We could just allocate one,
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.