Fix a regression introduced in "overlap checking of the black hole queue..."
authorSimon Marlow <marlowsd@gmail.com>
Tue, 20 Oct 2009 11:50:20 +0000 (11:50 +0000)
committerSimon Marlow <marlowsd@gmail.com>
Tue, 20 Oct 2009 11:50:20 +0000 (11:50 +0000)
We weren't checking the black-hole queue in the non-threaded RTS.

rts/Schedule.c

index 167cac1..539e006 100644 (file)
@@ -1454,6 +1454,12 @@ scheduleDoGC (Capability *cap, Task *task USED_IF_THREADS, rtsBool force_major)
         // GC thread each.
         waitForGcThreads(cap);
     }
         // GC thread each.
         waitForGcThreads(cap);
     }
+
+#else /* !THREADED_RTS */
+
+    // do this while the other Capabilities stop:
+    if (cap) scheduleCheckBlackHoles(cap);
+
 #endif
 
     IF_DEBUG(scheduler, printAllThreads());
 #endif
 
     IF_DEBUG(scheduler, printAllThreads());