Comments and type signatures only
[ghc-hetmet.git] / rts / Capability.h
index ff6e368..41974dc 100644 (file)
@@ -43,9 +43,6 @@ struct Capability_ {
     // catching unsafe call-ins.
     rtsBool in_haskell;
 
-    // true if this Capability is currently in the GC
-    rtsBool in_gc;
-
     // The run queue.  The Task owning this Capability has exclusive
     // access to its run queue, so can wake up threads without
     // taking a lock, and the common path through the scheduler is
@@ -59,7 +56,7 @@ struct Capability_ {
     // the suspended TSOs easily.  Hence, when migrating a Task from
     // the returning_tasks list, we must also migrate its entry from
     // this list.
-    Task *suspended_ccalling_tasks;
+    InCall *suspended_ccalls;
 
     // One mutable list per generation, so we don't need to take any
     // locks when updating an old-generation thunk.  This also lets us
@@ -297,7 +294,8 @@ recordMutableCap (StgClosure *p, Capability *cap, nat gen)
     bdescr *bd;
 
     // We must own this Capability in order to modify its mutable list.
-    ASSERT(cap->running_task == myTask());
+    //    ASSERT(cap->running_task == myTask());
+    // NO: assertion is violated by performPendingThrowTos()
     bd = cap->mut_lists[gen];
     if (bd->free >= bd->start + BLOCK_SIZE_W) {
        bdescr *new_bd;