summaryrefslogtreecommitdiff
path: root/includes/rts/EventLogFormat.h
diff options
context:
space:
mode:
authorSimon Marlow <marlowsd@gmail.com>2011-01-27 16:42:26 +0000
committerSimon Marlow <marlowsd@gmail.com>2011-01-27 16:42:26 +0000
commit784e214dd44eba39f4c34936a27e6cc82948205c (patch)
tree42ce7135e1045117461118f7cbc098df5e707138 /includes/rts/EventLogFormat.h
parent069cd16951bd45a55c94b5adce048c4ec9aad2c8 (diff)
downloadhaskell-784e214dd44eba39f4c34936a27e6cc82948205c.tar.gz
Annotate thread stop events with the owner of the black hole
So we can now get these in ThreadScope: 19487000: cap 1: stopping thread 6 (blocked on black hole owned by thread 4) Note: needs an update to ghc-events. Older ThreadScopes will just ignore the new information.
Diffstat (limited to 'includes/rts/EventLogFormat.h')
-rw-r--r--includes/rts/EventLogFormat.h13
1 files changed, 12 insertions, 1 deletions
diff --git a/includes/rts/EventLogFormat.h b/includes/rts/EventLogFormat.h
index 87010eea8a..5741ad9e06 100644
--- a/includes/rts/EventLogFormat.h
+++ b/includes/rts/EventLogFormat.h
@@ -101,7 +101,7 @@
*/
#define EVENT_CREATE_THREAD 0 /* (thread) */
#define EVENT_RUN_THREAD 1 /* (thread) */
-#define EVENT_STOP_THREAD 2 /* (thread, status) */
+#define EVENT_STOP_THREAD 2 /* (thread, status, blockinfo) */
#define EVENT_THREAD_RUNNABLE 3 /* (thread) */
#define EVENT_MIGRATE_THREAD 4 /* (thread, new_cap) */
#define EVENT_RUN_SPARK 5 /* (thread) */
@@ -138,6 +138,17 @@
* #define ThreadYielding 3
* #define ThreadBlocked 4
* #define ThreadFinished 5
+ * #define ForeignCall 6
+ * #define BlockedOnMVar 7
+ * #define BlockedOnBlackHole 8
+ * #define BlockedOnRead 9
+ * #define BlockedOnWrite 10
+ * #define BlockedOnDelay 11
+ * #define BlockedOnSTM 12
+ * #define BlockedOnDoProc 13
+ * #define BlockedOnCCall -- not used (see ForeignCall)
+ * #define BlockedOnCCall_NoUnblockExc -- not used (see ForeignCall)
+ * #define BlockedOnMsgThrowTo 16
*/
#define THREAD_SUSPENDED_FOREIGN_CALL 6