Jin Yao
4b799a9b77
perf script: Support DSO filter like in other perf tools
...
Other perf tool builtins already supported a DSO filter.
For example:
$ perf report --dsos a,b,c
which only considers symbols in these dsos.
Now the DSO filter is supported in 'perf script':
root@kbl-ppc:~# ./perf script --dsos "[kernel.kallsyms]"
perf 18123 [000] 6142863.075104: 1 cycles: ffffffff9ca77308 native_write_msr+0x8 ([kernel.kallsyms])
perf 18123 [000] 6142863.075107: 1 cycles: ffffffff9ca77308 native_write_msr+0x8 ([kernel.kallsyms])
perf 18123 [000] 6142863.075108: 10 cycles: ffffffff9ca77308 native_write_msr+0x8 ([kernel.kallsyms])
perf 18123 [000] 6142863.075109: 273 cycles: ffffffff9ca7730a native_write_msr+0xa ([kernel.kallsyms])
perf 18123 [000] 6142863.075110: 7684 cycles: ffffffff9ca3c9c0 native_sched_clock+0x50 ([kernel.kallsyms])
perf 18123 [000] 6142863.075112: 213017 cycles: ffffffff9d765a92 syscall_exit_to_user_mode+0x32 ([kernel.kallsyms])
perf 18123 [001] 6142863.075156: 1 cycles: ffffffff9ca77308 native_write_msr+0x8 ([kernel.kallsyms])
perf 18123 [001] 6142863.075158: 1 cycles: ffffffff9ca77308 native_write_msr+0x8 ([kernel.kallsyms])
perf 18123 [001] 6142863.075159: 17 cycles: ffffffff9ca77308 native_write_msr+0x8 ([kernel.kallsyms])
Committer testing:
$ perf script
ls 2364888 29303.010949: 1 cycles:u: ffffffffa4bbc6a9 [unknown] ([unknown])
ls 2364888 29303.010957: 1 cycles:u: ffffffffa429ef48 [unknown] ([unknown])
ls 2364888 29303.010961: 1 cycles:u: ffffffffa4260133 [unknown] ([unknown])
ls 2364888 29303.010964: 5 cycles:u: ffffffffa429efad [unknown] ([unknown])
ls 2364888 29303.010967: 41 cycles:u: ffffffffa42a4586 [unknown] ([unknown])
ls 2364888 29303.010972: 435 cycles:u: ffffffffa429efe0 [unknown] ([unknown])
ls 2364888 29303.010978: 5142 cycles:u: 7f9b95bc2abf __GI___tunables_init+0x11f (/usr/lib64/ld-2.32.so)
ls 2364888 29303.011006: 38551 cycles:u: ffffffffa4290f61 [unknown] ([unknown])
ls 2364888 29303.011486: 238234 cycles:u: 7f9b95bb7741 _dl_relocate_object+0xa71 (/usr/lib64/ld-2.32.so)
ls 2364888 29303.011937: 415870 cycles:u: 7f9b95a1c80e __strcoll_l+0xe (/usr/lib64/libc-2.32.so)
$
Before:
$ perf script --dsos /usr/lib64/libc-2.32.so |& head -5
Error: unknown option `dsos'
Usage: perf script [<options>]
or: perf script [<options>] record <script> [<record-options>] <command>
or: perf script [<options>] report <script> [script-args]
$
After:
$ perf script --dsos /usr/lib64/libc-2.32.so
ls 2364888 29303.011937: 415870 cycles:u: 7f9b95a1c80e __strcoll_l+0xe (/usr/lib64/libc-2.32.so)
$
Signed-off-by: Jin Yao <yao.jin@linux.intel.com>
Acked-by: Jiri Olsa <jolsa@kernel.org>
Tested-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Cc: Andi Kleen <ak@linux.intel.com>
Cc: Jin Yao <yao.jin@intel.com>
Cc: Kan Liang <kan.liang@linux.intel.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Link: http://lore.kernel.org/lkml/20210124232750.19170-2-yao.jin@linux.intel.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
2021-02-03 13:10:43 -03:00
..
2016-07-04 20:27:27 -03:00
2019-09-27 09:26:14 -03:00
2018-04-26 13:47:10 -03:00
2018-10-24 15:29:50 -03:00
2019-03-19 16:52:04 -03:00
2015-04-29 10:38:06 -03:00
2019-06-05 09:47:57 -03:00
2013-07-08 17:37:25 -03:00
2015-08-21 11:34:10 -03:00
2020-03-11 11:00:33 -03:00
2020-11-11 12:24:51 -03:00
2012-08-13 14:55:02 -03:00
2019-09-30 17:29:51 -03:00
2020-04-18 09:05:00 -03:00
2020-01-14 12:02:19 -03:00
2013-12-09 15:21:45 -03:00
2020-07-28 08:50:48 -03:00
2020-12-28 12:20:39 -03:00
2011-12-23 17:01:03 -02:00
2020-10-15 12:02:12 -03:00
2020-12-28 12:20:39 -03:00
2020-08-06 09:43:37 -03:00
2020-10-14 13:34:48 -03:00
2017-11-16 14:50:07 -03:00
2020-09-04 16:11:16 -03:00
2020-10-13 11:01:42 -03:00
2020-10-14 13:14:40 -03:00
2018-03-07 10:26:32 -03:00
2018-02-16 14:55:42 -03:00
2019-12-02 15:38:59 -03:00
2020-10-14 12:24:28 -03:00
2017-11-16 14:50:04 -03:00
2021-01-20 14:34:20 -03:00
2019-05-25 23:04:42 -04:00
2021-01-20 14:34:21 -03:00
2021-01-20 14:34:20 -03:00
2020-01-06 11:46:09 -03:00
2018-03-07 10:26:32 -03:00
2018-06-06 15:40:10 -03:00
2021-02-03 13:10:43 -03:00
2021-01-20 14:25:28 -03:00
2016-06-30 18:27:45 -03:00
2017-11-16 14:50:06 -03:00
2020-05-29 16:51:38 -03:00
2019-10-15 13:03:49 -03:00
2018-04-02 13:52:23 -03:00
2019-11-06 15:43:05 -03:00
2020-08-06 09:35:06 -03:00
2020-09-17 16:03:31 -03:00
2016-09-01 09:44:13 -03:00
2020-05-28 10:03:26 -03:00
2019-07-02 16:08:16 -03:00
2020-09-17 15:48:31 -03:00