Barrelfish
|
System-wide tracing. More...
Functions | |
errval_t | trace_init (void) |
Initialize per-core tracing buffer. More... | |
errval_t | trace_disable_domain (void) |
Turn off tracing for this domain. | |
void | trace_init_disp (void) |
errval_t | trace_setup_child (struct cnoderef taskcn, dispatcher_handle_t handle) |
Setup the tracing buffer for a child domain. More... | |
errval_t | trace_setup_on_core (struct capref *retcap) |
Set up the trace buffer on the current core and notify the kernel. More... | |
System-wide tracing.
errval_t trace_init | ( | void | ) |
Initialize per-core tracing buffer.
This function creates a cap for the tracing buffer in taskcn. It is called from init at startup.
Note that it does not map the buffer into its own vspace.
void trace_init_disp | ( | void | ) |
Sets up tracing framework for current dispatcher
errval_t trace_setup_child | ( | struct cnoderef | taskcn, |
dispatcher_handle_t | handle | ||
) |
Setup the tracing buffer for a child domain.
Assumes that the child domain is currently being spawned (because we rely on libspawndomain having the right state to allow us to map the trace buffer into the child's vspace).
trace_init must already have been called
errval_t trace_setup_on_core | ( | struct capref * | retcap | ) |
Set up the trace buffer on the current core and notify the kernel.
Clear the buffer. Return the cap for the buffer. Should be called once on each core.