diff options
author | Mathieu Desnoyers <mathieu.desnoyers@efficios.com> | 2011-03-16 19:04:37 -0400 |
---|---|---|
committer | Mathieu Desnoyers <mathieu.desnoyers@polymtl.ca> | 2011-03-16 19:04:37 -0400 |
commit | 16fd1036d0559f80b8c726bac4a1dc4fe296141a (patch) | |
tree | 82417e1d22b9ad8528e6e15efece604024cbc741 /include/trace | |
parent | 241138a75b964d44fdc7360f70ff0810536e57d3 (diff) |
lttng-instrumentation/lttng-instrumentation-ipc
LTTng instrumentation - ipc
Interprocess communication, core events.
Added tracepoints :
ipc_msg_create
ipc_sem_create
ipc_shm_create
Those tracepoints are used by LTTng.
About the performance impact of tracepoints (which is comparable to markers),
even without immediate values optimizations, tests done by Hideo Aoki on ia64
show no regression. His test case was using hackbench on a kernel where
scheduler instrumentation (about 5 events in code scheduler code) was added.
See the "Tracepoints" patch header for performance result detail.
[ edit: also add generic ipc instrumentation (2.6.34) ]
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@polymtl.ca>
CC: Masami Hiramatsu <mhiramat@redhat.com>
CC: 'Peter Zijlstra' <peterz@infradead.org>
CC: "Frank Ch. Eigler" <fche@redhat.com>
CC: 'Ingo Molnar' <mingo@elte.hu>
CC: 'Hideo AOKI' <haoki@redhat.com>
CC: Takashi Nishiie <t-nishiie@np.css.fujitsu.com>
CC: 'Steven Rostedt' <rostedt@goodmis.org>
CC: Eduard - Gabriel Munteanu <eduard.munteanu@linux360.ro>
Diffstat (limited to 'include/trace')
-rw-r--r-- | include/trace/ipc.h | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/include/trace/ipc.h b/include/trace/ipc.h new file mode 100644 index 00000000000..ea9dac190c3 --- /dev/null +++ b/include/trace/ipc.h @@ -0,0 +1,18 @@ +#ifndef _TRACE_IPC_H +#define _TRACE_IPC_H + +#include <linux/tracepoint.h> + +DECLARE_TRACE(ipc_msg_create, + TP_PROTO(long id, int flags), + TP_ARGS(id, flags)); +DECLARE_TRACE(ipc_sem_create, + TP_PROTO(long id, int flags), + TP_ARGS(id, flags)); +DECLARE_TRACE(ipc_shm_create, + TP_PROTO(long id, int flags), + TP_ARGS(id, flags)); +DECLARE_TRACE(ipc_call, + TP_PROTO(unsigned int call, unsigned int first), + TP_ARGS(call, first)); +#endif |