[commit: ghc] ghc-7.6: Include pinned memory in the stats for allocated memory (6fd14e4)

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

On branch  : ghc-7.6

http://hackage.haskell.org/trac/ghc/changeset/6fd14e46415cd9b631305fc47bf3d696e953747a

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

commit 6fd14e46415cd9b631305fc47bf3d696e953747a
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.
    
    MERGED from commit c19f2e320a575a66d31c83d846ce3cc954c4ab3b

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

 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 fa44be2..0b119fa 100644
--- a/rts/sm/GC.c
+++ b/rts/sm/GC.c
@@ -288,7 +288,7 @@ GarbageCollect (rtsBool force_major_gc,
 
   // 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 1b7577a..57e6365 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.