Fix for derefing ThreadRelocated TSOs in MVar operations
[ghc-hetmet.git] / rts / Threads.c
index 5723eac..25241c7 100644 (file)
@@ -215,10 +215,14 @@ removeThreadFromDeQueue (Capability *cap,
    ------------------------------------------------------------------------- */
 
 void
-tryWakeupThread (Capability *cap, StgTSO *tso_)
+tryWakeupThread (Capability *cap, StgTSO *tso)
 {
-    StgTSO *tso = deRefTSO(tso_);
+    tryWakeupThread_(cap, deRefTSO(tso));
+}
 
+void
+tryWakeupThread_ (Capability *cap, StgTSO *tso)
+{
     traceEventThreadWakeup (cap, tso, tso->cap->no);
 
 #ifdef THREADED_RTS