X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=rts%2Feventlog%2FEventLog.h;h=602ac2c87b7eb23dfbbbdf9865b641ed1c667542;hb=cd47700887365ca2a6af17d03e731efce65cf2ac;hp=e2ee13ac111265ceb0fe276ae0f064c6580da5c3;hpb=9a9803e8dc80ba41bd3e2d31228e64fa6b61060e;p=ghc-hetmet.git diff --git a/rts/eventlog/EventLog.h b/rts/eventlog/EventLog.h index e2ee13a..602ac2c 100644 --- a/rts/eventlog/EventLog.h +++ b/rts/eventlog/EventLog.h @@ -12,7 +12,7 @@ #include "rts/EventLogFormat.h" #include "Capability.h" -BEGIN_RTS_PRIVATE +#include "BeginPrivate.h" #ifdef TRACING @@ -24,38 +24,75 @@ extern char *EventTagDesc[]; void initEventLogging(void); void endEventLogging(void); void freeEventLogging(void); +void abortEventLogging(void); // #4512 - after fork child needs to abort +void flushEventLog(void); // event log inherited from parent /* - * Post an event to the capability's event buffer. + * Post a scheduler event to the capability's event buffer (an event + * that has an associated thread). */ void postSchedEvent(Capability *cap, EventTypeNum tag, - StgThreadID id, StgWord64 other); + StgThreadID id, StgWord info1, StgWord info2); + +/* + * Post a nullary event. + */ +void postEvent(Capability *cap, EventTypeNum tag); void postMsg(char *msg, va_list ap); +void postUserMsg(Capability *cap, char *msg, va_list ap); + void postCapMsg(Capability *cap, char *msg, va_list ap); -void printAndClearEventLog(Capability *cap); +void postEventStartup(EventCapNo n_caps); + +/* + * Post a capability set modification event + */ +void postCapsetModifyEvent (EventTypeNum tag, + EventCapsetID capset, + StgWord32 other); + +/* + * Post a capability set event with a string payload + */ +void postCapsetStrEvent (EventTypeNum tag, + EventCapsetID capset, + char *msg); + +/* + * Post a capability set event with several strings payload + */ +void postCapsetVecEvent (EventTypeNum tag, + EventCapsetID capset, + int argc, + char *msg[]); #else /* !TRACING */ INLINE_HEADER void postSchedEvent (Capability *cap STG_UNUSED, EventTypeNum tag STG_UNUSED, StgThreadID id STG_UNUSED, - StgWord64 other STG_UNUSED) + StgWord info1 STG_UNUSED, + StgWord info2 STG_UNUSED) +{ /* nothing */ } + +INLINE_HEADER void postEvent (Capability *cap STG_UNUSED, + EventTypeNum tag STG_UNUSED) { /* nothing */ } INLINE_HEADER void postMsg (char *msg STG_UNUSED, va_list ap STG_UNUSED) { /* nothing */ } -INLINE_HEADER void postCapMsg (Capability *cap, +INLINE_HEADER void postCapMsg (Capability *cap STG_UNUSED, char *msg STG_UNUSED, va_list ap STG_UNUSED) { /* nothing */ } #endif -END_RTS_PRIVATE +#include "EndPrivate.h" #endif /* TRACING_H */