linux_dsm_epyc7002/Documentation/trace
Srikar Dronamraju f3f096cfed tracing: Provide trace events interface for uprobes
Implements trace_event support for uprobes. In its current form
it can be used to put probes at a specified offset in a file and
dump the required registers when the code flow reaches the
probed address.

The following example shows how to dump the instruction pointer
and %ax a register at the probed text address.  Here we are
trying to probe zfree in /bin/zsh:

 # cd /sys/kernel/debug/tracing/
 # cat /proc/`pgrep  zsh`/maps | grep /bin/zsh | grep r-xp
 00400000-0048a000 r-xp 00000000 08:03 130904 /bin/zsh
 # objdump -T /bin/zsh | grep -w zfree
 0000000000446420 g    DF .text  0000000000000012  Base
 zfree # echo 'p /bin/zsh:0x46420 %ip %ax' > uprobe_events
 # cat uprobe_events
 p:uprobes/p_zsh_0x46420 /bin/zsh:0x0000000000046420
 # echo 1 > events/uprobes/enable
 # sleep 20
 # echo 0 > events/uprobes/enable
 # cat trace
 # tracer: nop
 #
 #           TASK-PID    CPU#    TIMESTAMP  FUNCTION
 #              | |       |          |         |
              zsh-24842 [006] 258544.995456: p_zsh_0x46420: (0x446420) arg1=446421 arg2=79
              zsh-24842 [007] 258545.000270: p_zsh_0x46420: (0x446420) arg1=446421 arg2=79
              zsh-24842 [002] 258545.043929: p_zsh_0x46420: (0x446420) arg1=446421 arg2=79
              zsh-24842 [004] 258547.046129: p_zsh_0x46420: (0x446420) arg1=446421 arg2=79

Signed-off-by: Srikar Dronamraju <srikar@linux.vnet.ibm.com>
Acked-by: Steven Rostedt <rostedt@goodmis.org>
Acked-by: Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Ananth N Mavinakayanahalli <ananth@in.ibm.com>
Cc: Jim Keniston <jkenisto@linux.vnet.ibm.com>
Cc: Linux-mm <linux-mm@kvack.org>
Cc: Oleg Nesterov <oleg@redhat.com>
Cc: Andi Kleen <andi@firstfloor.org>
Cc: Christoph Hellwig <hch@infradead.org>
Cc: Arnaldo Carvalho de Melo <acme@infradead.org>
Cc: Anton Arapov <anton@redhat.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Link: http://lkml.kernel.org/r/20120411103043.GB29437@linux.vnet.ibm.com
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2012-05-07 14:30:17 +02:00
..
postprocess mm-tracepoint: rename page-free events 2012-01-10 16:30:41 -08:00
events-kmem.txt mm-tracepoint: rename page-free events 2012-01-10 16:30:41 -08:00
events-power.txt Documentation: Fix typo in events-power.txt 2012-02-21 11:40:38 +01:00
events.txt tracing: update Documentation on max preds limit 2011-11-04 21:25:57 -04:00
ftrace-design.txt tracing/syscalls: Allow arch specific syscall symbol matching 2011-02-07 21:29:03 -05:00
ftrace.txt ftrace: Append wakeup_rt description of ftrace doc 2012-02-13 09:14:48 -05:00
function-graph-fold.vim tracing: Add vim script to enable folding for function_graph traces 2009-08-26 00:32:04 -04:00
kprobetrace.txt tracing/kprobes: Support module init function probing 2011-07-15 15:17:14 -04:00
mmiotrace.txt Documentation: Update mmiotrace.txt 2009-12-20 06:18:23 +01:00
ring-buffer-design.txt Fix common misspellings 2011-03-31 11:26:23 -03:00
tracepoint-analysis.txt mm-tracepoint: fix documentation and examples 2012-01-10 16:30:41 -08:00
tracepoints.txt tracing: consolidate documents 2009-04-09 07:28:10 +02:00
uprobetracer.txt tracing: Provide trace events interface for uprobes 2012-05-07 14:30:17 +02:00