Due to darcs confusion, I managed to leave out part of the patch for
#1185. This should make 1185(threaded1) go through now.
initTimer();
startTimer();
initTimer();
startTimer();
+#if defined(THREADED_RTS)
+ cap = ioManagerStartCap(cap);
+#endif
+
cap = rts_evalStableIO(cap, entry, NULL); // run the action
rts_checkSchedStatus("forkProcess",cap);
cap = rts_evalStableIO(cap, entry, NULL); // run the action
rts_checkSchedStatus("forkProcess",cap);
+Capability *
+ioManagerStartCap (Capability *cap)
+{
+ return rts_evalIO(cap,&base_GHCziConc_ensureIOManagerIsRunning_closure,NULL);
+}
+
void
ioManagerStart (void)
{
void
ioManagerStart (void)
{
Capability *cap;
if (io_manager_pipe < 0) {
cap = rts_lock();
Capability *cap;
if (io_manager_pipe < 0) {
cap = rts_lock();
- cap = rts_evalIO(cap,&base_GHCziConc_ensureIOManagerIsRunning_closure,NULL);
+ cap = ioManagerStartCap(cap);
void startSignalHandlers(Capability *cap);
#endif
void startSignalHandlers(Capability *cap);
#endif
+Capability *ioManagerStartCap (Capability *cap);
+
extern StgInt *signal_handlers;
END_RTS_PRIVATE
extern StgInt *signal_handlers;
END_RTS_PRIVATE