diff options
author | Arnaldo Carvalho de Melo <acme@redhat.com> | 2019-10-07 20:54:51 +0200 |
---|---|---|
committer | Arnaldo Carvalho de Melo <acme@redhat.com> | 2019-10-09 16:23:52 +0200 |
commit | c330ef2847eeedfa9d06f03836dfd4fc6727e855 (patch) | |
tree | 75b8895d248560b9aa9abad09077993d93359bc4 /tools/perf/builtin-trace.c | |
parent | perf trace beauty: Add the glue for the autogenerated MSR arrays (diff) | |
download | linux-c330ef2847eeedfa9d06f03836dfd4fc6727e855.tar.xz linux-c330ef2847eeedfa9d06f03836dfd4fc6727e855.zip |
perf trace: Associate the "msr" tracepoint arg name with x86_MSR__scnprintf()
So that we can go from:
# perf trace -e msr:write_msr --max-stack=16 sleep 1
0.000 sleep/6740 msr:write_msr(msr: 3221225728, val: 139636317451648)
do_trace_write_msr ([kernel.kallsyms])
do_trace_write_msr ([kernel.kallsyms])
do_arch_prctl_64 ([kernel.kallsyms])
__x64_sys_arch_prctl ([kernel.kallsyms])
do_syscall_64 ([kernel.kallsyms])
entry_SYSCALL_64 ([kernel.kallsyms])
init_tls (/usr/lib64/ld-2.29.so)
dl_main (/usr/lib64/ld-2.29.so)
_dl_sysdep_start (/usr/lib64/ld-2.29.so)
_dl_start (/usr/lib64/ld-2.29.so)
#
To:
# perf trace -e msr:write_msr --max-stack=16 sleep 1
0.000 sleep/8519 msr:write_msr(msr: FS_BASE, val: 139878031705472)
do_trace_write_msr ([kernel.kallsyms])
do_trace_write_msr ([kernel.kallsyms])
do_arch_prctl_64 ([kernel.kallsyms])
__x64_sys_arch_prctl ([kernel.kallsyms])
do_syscall_64 ([kernel.kallsyms])
entry_SYSCALL_64 ([kernel.kallsyms])
init_tls (/usr/lib64/ld-2.29.so)
dl_main (/usr/lib64/ld-2.29.so)
_dl_sysdep_start (/usr/lib64/ld-2.29.so)
_dl_start (/usr/lib64/ld-2.29.so)
#
This, in reverse, will allow for symbolic system call/tracepoint
filtering.
Cc: Adrian Hunter <adrian.hunter@intel.com>
Cc: Brendan Gregg <brendan.d.gregg@gmail.com>
Cc: Jiri Olsa <jolsa@kernel.org>
Cc: Luis Cláudio Gonçalves <lclaudio@redhat.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Link: https://lkml.kernel.org/n/tip-q1q4unmqja5ex7dy0kb5cjaa@git.kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Diffstat (limited to '')
-rw-r--r-- | tools/perf/builtin-trace.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/tools/perf/builtin-trace.c b/tools/perf/builtin-trace.c index d52972ca6123..e9f132aa5a09 100644 --- a/tools/perf/builtin-trace.c +++ b/tools/perf/builtin-trace.c @@ -1480,6 +1480,7 @@ static int syscall__alloc_arg_fmts(struct syscall *sc, int nr_args) } static struct syscall_arg_fmt syscall_arg_fmts__by_name[] = { + { .name = "msr", .scnprintf = SCA_X86_MSR, } }; static int syscall_arg_fmt__cmp(const void *name, const void *fmtp) |