trace: Add user-space event tracing/injection

来源:互联网 发布:mac的音频剪辑软件 编辑:程序博客网 时间:2024/04/18 08:13
Subject: trace: Add user-space event tracing/injectionFrom: Ingo Molnar <mingo@elte.hu>Date: Wed Nov 17 10:11:53 CET 2010This feature (suggested by Darren Hart and Pekka Engberg) allows user-spaceprograms to print trace events in a very simple and self-contained way: #include <sys/prctl.h> #include <string.h> #define PR_TASK_PERF_USER_TRACE 35 int main(void) {         char *msg = "Hello World!\n";         prctl(PR_TASK_PERF_USER_TRACE, msg, strlen(msg));         return 0; }These show up in 'trace' output as: $ trace report # # trace events of 'sleep 1': #        testit/ 6006 ( 0.002 ms): <"Hello World!">        testit/ 6006 ( 0.002 ms): <"Hello World!">Suggested-by: Darren Hart <dvhart@linux.intel.com>Suggested-by: Pekka Enberg <penberg@kernel.org>Signed-off-by: Ingo Molnar <mingo@elte.hu>--- include/linux/prctl.h       |    2 ++ include/trace/events/user.h |   32 ++++++++++++++++++++++++++++++++ kernel/sys.c                |   23 +++++++++++++++++++++++ kernel/trace/trace_events.c |   34 +++++++++++----------------------- tools/perf/builtin-trace.c  |   41 +++++++++++++++++++++++++++++++++++++++++ 5 files changed, 109 insertions(+), 23 deletions(-)


lwn.net/Articles/415839/


0 0
原创粉丝点击