diff options
author | Omar Sandoval <osandov@fb.com> | 2016-06-08 18:38:02 -0700 |
---|---|---|
committer | Steven Rostedt <rostedt@goodmis.org> | 2016-06-20 09:54:19 -0400 |
commit | 35abb67de744b5dbaec54381f2f9e0246089331d (patch) | |
tree | be334f88bb9cdf78b7f2fd33529469ac352c179e /kernel/trace/trace_kprobe.c | |
parent | 345ddcc882d8896dcbdcb3e0ee4a415fc23ec8b0 (diff) | |
download | lwn-35abb67de744b5dbaec54381f2f9e0246089331d.tar.gz lwn-35abb67de744b5dbaec54381f2f9e0246089331d.zip |
tracing: expose current->comm to [ku]probe events
ftrace is very quick to give up on saving the task command line (see
`trace_save_cmdline()`). The workaround for events which really care
about the command line is to explicitly assign it as part of the entry.
However, this doesn't work for kprobe events, as there's no
straightforward way to get access to current->comm. Add a kprobe/uprobe
event variable $comm which provides exactly that.
Link: http://lkml.kernel.org/r/f59b472033b943a370f5f48d0af37698f409108f.1465435894.git.osandov@fb.com
Acked-by: Masami Hiramatsu <mhiramat@kernel.org>
Signed-off-by: Omar Sandoval <osandov@fb.com>
Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
Diffstat (limited to 'kernel/trace/trace_kprobe.c')
-rw-r--r-- | kernel/trace/trace_kprobe.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/kernel/trace/trace_kprobe.c b/kernel/trace/trace_kprobe.c index 5546eec0505f..9aedb0b06683 100644 --- a/kernel/trace/trace_kprobe.c +++ b/kernel/trace/trace_kprobe.c @@ -587,6 +587,7 @@ static int create_trace_kprobe(int argc, char **argv) * $retval : fetch return value * $stack : fetch stack address * $stackN : fetch Nth of stack (N:0-) + * $comm : fetch current task comm * @ADDR : fetch memory at ADDR (ADDR should be in kernel) * @SYM[+|-offs] : fetch memory at SYM +|- offs (SYM is a data symbol) * %REG : fetch register REG |