add a missing unlockTSO()
[ghc-hetmet.git] / rts / Schedule.c
index abd7bc4..3f07d3c 100644 (file)
@@ -2201,6 +2201,7 @@ threadStackOverflow(Capability *cap, StgTSO *tso)
       //
 
       if (tso->flags & TSO_SQUEEZED) {
+          unlockTSO(tso);
           return tso;
       }
       // #3677: In a stack overflow situation, stack squeezing may
@@ -2342,7 +2343,7 @@ threadStackUnderflow (Capability *cap, Task *task, StgTSO *tso)
     // list. The new TSO is not yet on the mutable list, so we better
     // put it there.
     new_tso->dirty = 0;
-    new_tso->flags &= !TSO_LINK_DIRTY;
+    new_tso->flags &= ~TSO_LINK_DIRTY;
     dirty_TSO(cap, new_tso);
 
     debugTrace(DEBUG_sched, "thread %ld: reducing TSO size from %lu words to %lu",