From: simonmar Date: Tue, 12 Apr 2005 12:24:27 +0000 (+0000) Subject: [project @ 2005-04-12 12:24:27 by simonmar] X-Git-Tag: Initial_conversion_from_CVS_complete~755 X-Git-Url: http://git.megacz.com/?a=commitdiff_plain;h=cca6aea5b9512ab2b50231dae9763392cc706add;p=ghc-hetmet.git [project @ 2005-04-12 12:24:27 by simonmar] - emit a debug message when we're yielding at shut down time --- diff --git a/ghc/rts/Task.c b/ghc/rts/Task.c index 76ea891..06eab69 100644 --- a/ghc/rts/Task.c +++ b/ghc/rts/Task.c @@ -78,10 +78,11 @@ stopTaskManager (void) IF_DEBUG(scheduler, sched_belch("all tasks stopped")); return; } + IF_DEBUG(scheduler, sched_belch("yielding")); prodWorker(); yieldThread(); } - IF_DEBUG(scheduler, sched_belch("%d tasks still running, exiting anyway", tasksRunning)); + errorBelch("%d tasks still running, exiting anyway", tasksRunning); /* OLD CODE follows: @@ -200,9 +201,6 @@ taskStop (void) } ASSERT(task_info->id == id); - task_info->stopped = rtsTrue; - tasksRunning--; - stat_getTimes(¤tElapsedTime, ¤tUserTime, &elapsedGCTime); task_info->mut_time = @@ -212,6 +210,9 @@ taskStop (void) if (task_info->mut_time < 0.0) { task_info->mut_time = 0.0; } if (task_info->mut_etime < 0.0) { task_info->mut_etime = 0.0; } + + task_info->stopped = rtsTrue; + tasksRunning--; } void