turn off debugging messages....another bug fix
authorbdemsky <bdemsky>
Sat, 25 Jun 2011 00:16:36 +0000 (00:16 +0000)
committerbdemsky <bdemsky>
Sat, 25 Jun 2011 00:16:36 +0000 (00:16 +0000)
Robust/src/Runtime/bamboo/multicoregarbage.c
Robust/src/Runtime/bamboo/multicoregarbage.h

index dd0788f54da90256966897a92d15a5bd5a675c02..d85eb29922b12d7e0c188904c2e2937d357a4a4b 100644 (file)
@@ -508,15 +508,13 @@ bool gc(struct garbagelist * stackptr) {
   if(0 == BAMBOO_NUM_OF_CORE) {
     GC_PRINTF("Check if we can do gc or not\n");
     gccorestatus[BAMBOO_NUM_OF_CORE] = 0;
-    if(!gc_checkCoreStatus()) {
-      // some of the cores are still executing the mutator and did not reach
-      // some gc safe point, therefore it is not ready to do gc
-      gcflag = true;
-      return false;
-    } else {
-      GCPROFILE_START();
-      pregccheck();
-    }
+
+    //wait for other cores to catch up
+    while(!gc_checkCoreStatus())
+      ;
+
+    GCPROFILE_START();
+    pregccheck();
     GC_PRINTF("start gc! \n");
     pregcprocessing();
     gc_master(stackptr);
index cd426c7a37e3de7c25306b03226d1b0bb353fc8e..6c0dd8c0ee1d882b683661dee58aba9a4b9a694d 100644 (file)
@@ -7,11 +7,11 @@
 #include "structdefs.h"
 #include "multicoregcprofile.h"
 
-//#ifdef GC_DEBUG
+#ifdef GC_DEBUG
 #define GC_PRINTF tprintf
-//#else
-//#define GC_PRINTF if(0) tprintf
-//#endif 
+#else
+#define GC_PRINTF if(0) tprintf
+#endif 
 
 #define TR() tprintf("%u\n",__LINE__)