diff options
author | Ian Lynagh <igloo@earth.li> | 2006-12-11 13:10:04 +0000 |
---|---|---|
committer | Ian Lynagh <igloo@earth.li> | 2006-12-11 13:10:04 +0000 |
commit | cf6b495d8f6d8f08fd6603c5ba2ec7a6acf7ac01 (patch) | |
tree | c580b3eac83af32a8f807914901181ed4a7dcf19 /rts/Schedule.h | |
parent | d526504719676871376324858fe2073aa2011424 (diff) | |
download | haskell-cf6b495d8f6d8f08fd6603c5ba2ec7a6acf7ac01.tar.gz |
Add freeScheduler/freeTaskManager and call it later than exitScheduler
We were freeing the tasks in exitScheduler (stopTaskManager) before
exitStorage (stat_exit), but the latter needs to walk down the list
printing stats. Resulted in segfaults with commands like
ghc -v0 -e main q.hs -H32m -H32m +RTS -Sstderr
(where q.hs is trivial), but very sensitive to exact commandline and
libc version or something.
Diffstat (limited to 'rts/Schedule.h')
-rw-r--r-- | rts/Schedule.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/rts/Schedule.h b/rts/Schedule.h index 2afedeec86..ba5efc29ad 100644 --- a/rts/Schedule.h +++ b/rts/Schedule.h @@ -19,6 +19,7 @@ */ void initScheduler (void); void exitScheduler (void); +void freeScheduler (void); // Place a new thread on the run queue of the current Capability void scheduleThread (Capability *cap, StgTSO *tso); |