From: simonmar Date: Fri, 25 Nov 2005 14:33:12 +0000 (+0000) Subject: [project @ 2005-11-25 14:33:12 by simonmar] X-Git-Tag: Initial_conversion_from_CVS_complete~6 X-Git-Url: http://git.megacz.com/?a=commitdiff_plain;h=db18148d1a62abc745da955530d7f46a6f1e9f36;p=ghc-hetmet.git [project @ 2005-11-25 14:33:12 by simonmar] We must empty the suspended_ccalling_tasks and the returning_task list when forking. --- diff --git a/ghc/rts/Schedule.c b/ghc/rts/Schedule.c index 8fe711a..d1a6a55 100644 --- a/ghc/rts/Schedule.c +++ b/ghc/rts/Schedule.c @@ -2088,9 +2088,13 @@ forkProcess(HsStablePtr *entry } RELEASE_LOCK(&sched_mutex); + cap->suspended_ccalling_tasks = NULL; + #if defined(THREADED_RTS) // wipe our spare workers list. cap->spare_workers = NULL; + cap->returning_tasks_hd = NULL; + cap->returning_tasks_tl = NULL; #endif cap = rts_evalStableIO(cap, entry, NULL); // run the action