Expose all EventLog events as DTrace probes
authorManuel M T Chakravarty <chak@cse.unsw.edu.au>
Sat, 12 Dec 2009 10:08:09 +0000 (10:08 +0000)
committerManuel M T Chakravarty <chak@cse.unsw.edu.au>
Sat, 12 Dec 2009 10:08:09 +0000 (10:08 +0000)
commit015d3d46b6de2f95386a515a7d166d996a0416db
treeda6c07854ca7ac899f08d56e5185ba55b6b854ac
parentdcba7784a1af5fd0c054031c49fe159d69af4f86
Expose all EventLog events as DTrace probes
- Defines a DTrace provider, called 'HaskellEvent', that provides a probe
  for every event of the eventlog framework.
- In contrast to the original eventlog, the DTrace probes are available in
  all flavours of the runtime system (DTrace probes have virtually no
  overhead if not enabled); when -DTRACING is defined both the regular
  event log as well as DTrace probes can be used.
- Currently, Mac OS X only.  User-space DTrace probes are implemented
  differently on Mac OS X than in the original DTrace implementation.
  Nevertheless, it shouldn't be too hard to enable these probes on other
  platforms, too.
- Documentation is at http://hackage.haskell.org/trac/ghc/wiki/DTrace
16 files changed:
configure.ac
includes/rts/EventLogFormat.h
mk/config.mk.in
rts/Capability.c
rts/PrimOps.cmm
rts/RtsProbes.d [new file with mode: 0644]
rts/RtsStartup.c
rts/Schedule.c
rts/Schedule.h
rts/Sparks.c
rts/Threads.c
rts/Trace.c
rts/Trace.h
rts/eventlog/EventLog.c
rts/ghc.mk
rts/sm/GC.c