We must empty the suspended_ccalling_tasks and the returning_task list
when forking.
}
RELEASE_LOCK(&sched_mutex);
}
RELEASE_LOCK(&sched_mutex);
+ cap->suspended_ccalling_tasks = NULL;
+
#if defined(THREADED_RTS)
// wipe our spare workers list.
cap->spare_workers = 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
#endif
cap = rts_evalStableIO(cap, entry, NULL); // run the action