X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=rts%2FSTM.c;h=e8d3fc0e0bf11dd1ed2521da963921701bfa55d0;hb=cd47700887365ca2a6af17d03e731efce65cf2ac;hp=3de42e20906f664534709450796712f16dc129f4;hpb=612d2bc50d85bd4f24738e00e70b79cd5b714fe0;p=ghc-hetmet.git diff --git a/rts/STM.c b/rts/STM.c index 3de42e2..e8d3fc0 100644 --- a/rts/STM.c +++ b/rts/STM.c @@ -879,17 +879,12 @@ static StgBool check_read_only(StgTRecHeader *trec STG_UNUSED) { /************************************************************************/ -void stmPreGCHook() { - nat i; - +void stmPreGCHook (Capability *cap) { lock_stm(NO_TREC); TRACE("stmPreGCHook"); - for (i = 0; i < n_capabilities; i ++) { - Capability *cap = &capabilities[i]; - cap -> free_tvar_watch_queues = END_STM_WATCH_QUEUE; - cap -> free_trec_chunks = END_STM_CHUNK_LIST; - cap -> free_trec_headers = NO_TREC; - } + cap->free_tvar_watch_queues = END_STM_WATCH_QUEUE; + cap->free_trec_chunks = END_STM_CHUNK_LIST; + cap->free_trec_headers = NO_TREC; unlock_stm(NO_TREC); }