X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=rts%2FThreads.c;h=2c7b2beb8678e8736da7cbbe4d3eb562baff3640;hb=f48b8ba55be1f05a0a8e0cc3348ba44ca86c554c;hp=b7f62c8f07fad55734c6446fe3ebf42d63e4e8b6;hpb=200c73fdfea734765c48309cc8dcbcf44b69c8c5;p=ghc-hetmet.git diff --git a/rts/Threads.c b/rts/Threads.c index b7f62c8..2c7b2be 100644 --- a/rts/Threads.c +++ b/rts/Threads.c @@ -507,14 +507,14 @@ unblockOne_ (Capability *cap, StgTSO *tso, appendToRunQueue(cap,tso); // we're holding a newly woken thread, make sure we context switch // quickly so we can migrate it if necessary. - context_switch = 1; + cap->context_switch = 1; } else { // we'll try to wake it up on the Capability it was last on. - wakeupThreadOnCapability_lock(tso->cap, tso); + wakeupThreadOnCapability(cap, tso->cap, tso); } #else appendToRunQueue(cap,tso); - context_switch = 1; + cap->context_switch = 1; #endif debugTrace(DEBUG_sched, @@ -698,7 +698,7 @@ printThreadBlockage(StgTSO *tso) break; #if defined(mingw32_HOST_OS) case BlockedOnDoProc: - debugBelch("is blocked on proc (request: %ld)", tso->block_info.async_result->reqID); + debugBelch("is blocked on proc (request: %u)", tso->block_info.async_result->reqID); break; #endif case BlockedOnDelay: @@ -763,6 +763,11 @@ printThreadStatus(StgTSO *t) default: printThreadBlockage(t); } + if (t->flags & TSO_DIRTY) { + debugBelch(" (TSO_DIRTY)"); + } else if (t->flags & TSO_LINK_DIRTY) { + debugBelch(" (TSO_LINK_DIRTY)"); + } debugBelch("\n"); } }