summaryrefslogtreecommitdiff
path: root/rts/posix
diff options
context:
space:
mode:
authorDuncan Coutts <duncan@well-typed.com>2021-01-03 18:44:19 +0000
committerMarge Bot <ben+marge-bot@smart-cactus.org>2021-01-25 05:11:14 -0500
commit34a8a0e4cf188a30d2b4b65909f24185c80d071e (patch)
treea8c25a0f4112f0dbe1a7a9969be577071d252094 /rts/posix
parente3564e3893c90dc20aa1949cdb85f41741faf895 (diff)
downloadhaskell-34a8a0e4cf188a30d2b4b65909f24185c80d071e.tar.gz
Remove ioManager{Start,Die,Wakeup} from IOManager.h
They are not part of the IOManager interface used within the rest of the RTS. They are the part of the interface of specific I/O manager implementations. They are no longer called directly elsewhere in the RTS, and are now only called by the dispatch functions in IOManager.c
Diffstat (limited to 'rts/posix')
-rw-r--r--rts/posix/Signals.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/rts/posix/Signals.h b/rts/posix/Signals.h
index 208c773a04..8203f28b34 100644
--- a/rts/posix/Signals.h
+++ b/rts/posix/Signals.h
@@ -27,7 +27,17 @@ void startSignalHandlers(Capability *cap);
void install_vtalrm_handler(int sig, TickProc handle_tick);
+/* Communicating with the IO manager thread (see GHC.Conc).
+ *
+ * TODO: these I/O manager things are not related to signals and ought to live
+ * elsewhere, e.g. in a module specifically for the I/O manager.
+ */
+void ioManagerWakeup (void);
+#if defined(THREADED_RTS)
+void ioManagerDie (void);
+void ioManagerStart (void);
void ioManagerStartCap (/* inout */ Capability **cap);
+#endif
extern StgInt *signal_handlers;