diff options
author | Ingo Molnar <mingo@kernel.org> | 2015-08-12 06:16:11 -0400 |
---|---|---|
committer | Ingo Molnar <mingo@kernel.org> | 2015-08-12 06:16:11 -0400 |
commit | 5f1230c9b80b89f404938ff88dfa64a963f74f2c (patch) | |
tree | f829a0246125b517443de57b883bc663aad82d9d /tools/perf/util/parse-events.c | |
parent | 709bc871923c12b284424f9d47b99dc975ba8b29 (diff) | |
parent | 4605bb55b91449a1a953a51f0334d3bc02351adb (diff) |
Merge tag 'perf-core-for-mingo' of git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux into perf/core
Pull perf/core improvements and fixes from Arnaldo Carvalho de Melo:
User visible changes:
- Introduce 'srcfile' sort key: (Andi Kleen)
# perf record -F 10000 usleep 1
# perf report --stdio --dsos '[kernel.vmlinux]' -s srcfile
<SNIP>
# Overhead Source File
26.49% copy_page_64.S
5.49% signal.c
0.51% msr.h
#
It can be combined with other fields, for instance, experiment with
'-s srcfile,symbol'.
There are some oddities in some distros and with some specific DSOs, being
investigated, so your mileage may vary.
- Update the column width for the "srcline" sort key (Arnaldo Carvalho de Melo)
- Support per-event 'freq' term: (Namhyung Kim)
$ perf record -e 'cpu/instructions,freq=1234/',cycles -c 1000 sleep 1
$ perf evlist -F
cpu/instructions,freq=1234/: sample_freq=1234
cycles: sample_period=1000
$
Infrastructure changes:
- Move perf_counts struct and functions into separate object (Jiri Olsa)
- Unset perf_event_attr::freq when period term is set (Jiri Olsa)
- Move callchain option parsing code to util.c (Kan Liang)
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to 'tools/perf/util/parse-events.c')
-rw-r--r-- | tools/perf/util/parse-events.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/tools/perf/util/parse-events.c b/tools/perf/util/parse-events.c index 828936dc3f1e..dbf315df4220 100644 --- a/tools/perf/util/parse-events.c +++ b/tools/perf/util/parse-events.c | |||
@@ -597,6 +597,9 @@ do { \ | |||
597 | case PARSE_EVENTS__TERM_TYPE_SAMPLE_PERIOD: | 597 | case PARSE_EVENTS__TERM_TYPE_SAMPLE_PERIOD: |
598 | CHECK_TYPE_VAL(NUM); | 598 | CHECK_TYPE_VAL(NUM); |
599 | break; | 599 | break; |
600 | case PARSE_EVENTS__TERM_TYPE_SAMPLE_FREQ: | ||
601 | CHECK_TYPE_VAL(NUM); | ||
602 | break; | ||
600 | case PARSE_EVENTS__TERM_TYPE_BRANCH_SAMPLE_TYPE: | 603 | case PARSE_EVENTS__TERM_TYPE_BRANCH_SAMPLE_TYPE: |
601 | /* | 604 | /* |
602 | * TODO uncomment when the field is available | 605 | * TODO uncomment when the field is available |
@@ -659,6 +662,9 @@ do { \ | |||
659 | case PARSE_EVENTS__TERM_TYPE_SAMPLE_PERIOD: | 662 | case PARSE_EVENTS__TERM_TYPE_SAMPLE_PERIOD: |
660 | ADD_CONFIG_TERM(PERIOD, period, term->val.num); | 663 | ADD_CONFIG_TERM(PERIOD, period, term->val.num); |
661 | break; | 664 | break; |
665 | case PARSE_EVENTS__TERM_TYPE_SAMPLE_FREQ: | ||
666 | ADD_CONFIG_TERM(FREQ, freq, term->val.num); | ||
667 | break; | ||
662 | case PARSE_EVENTS__TERM_TYPE_TIME: | 668 | case PARSE_EVENTS__TERM_TYPE_TIME: |
663 | ADD_CONFIG_TERM(TIME, time, term->val.num); | 669 | ADD_CONFIG_TERM(TIME, time, term->val.num); |
664 | break; | 670 | break; |