diff options
| author | Adrian Hunter <adrian.hunter@intel.com> | 2018-03-06 04:13:13 -0500 |
|---|---|---|
| committer | Arnaldo Carvalho de Melo <acme@redhat.com> | 2018-03-06 09:05:47 -0500 |
| commit | 2e2967f4c398e0f984a6c04daa3a79512e2bb74e (patch) | |
| tree | 0b6c6d8d8d04707e2419867639d5b9b4d8b62676 /tools | |
| parent | 40c21898ba5372c14ef71717040529794a91ccc2 (diff) | |
perf auxtrace: Prevent decoding when --no-itrace
Prevent auxtrace_queues__process_index() from queuing AUX area data for
decoding when the --no-itrace option has been used.
Signed-off-by: Adrian Hunter <adrian.hunter@intel.com>
Cc: Jiri Olsa <jolsa@redhat.com>
Link: http://lkml.kernel.org/r/1520327598-1317-3-git-send-email-adrian.hunter@intel.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Diffstat (limited to 'tools')
| -rw-r--r-- | tools/perf/util/auxtrace.c | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/tools/perf/util/auxtrace.c b/tools/perf/util/auxtrace.c index 9faf3b5367db..6470ea2aa25e 100644 --- a/tools/perf/util/auxtrace.c +++ b/tools/perf/util/auxtrace.c | |||
| @@ -60,6 +60,12 @@ | |||
| 60 | #include "sane_ctype.h" | 60 | #include "sane_ctype.h" |
| 61 | #include "symbol/kallsyms.h" | 61 | #include "symbol/kallsyms.h" |
| 62 | 62 | ||
| 63 | static bool auxtrace__dont_decode(struct perf_session *session) | ||
| 64 | { | ||
| 65 | return !session->itrace_synth_opts || | ||
| 66 | session->itrace_synth_opts->dont_decode; | ||
| 67 | } | ||
| 68 | |||
| 63 | int auxtrace_mmap__mmap(struct auxtrace_mmap *mm, | 69 | int auxtrace_mmap__mmap(struct auxtrace_mmap *mm, |
| 64 | struct auxtrace_mmap_params *mp, | 70 | struct auxtrace_mmap_params *mp, |
| 65 | void *userpg, int fd) | 71 | void *userpg, int fd) |
| @@ -762,6 +768,9 @@ int auxtrace_queues__process_index(struct auxtrace_queues *queues, | |||
| 762 | size_t i; | 768 | size_t i; |
| 763 | int err; | 769 | int err; |
| 764 | 770 | ||
| 771 | if (auxtrace__dont_decode(session)) | ||
| 772 | return 0; | ||
| 773 | |||
| 765 | list_for_each_entry(auxtrace_index, &session->auxtrace_index, list) { | 774 | list_for_each_entry(auxtrace_index, &session->auxtrace_index, list) { |
| 766 | for (i = 0; i < auxtrace_index->nr; i++) { | 775 | for (i = 0; i < auxtrace_index->nr; i++) { |
| 767 | ent = &auxtrace_index->entries[i]; | 776 | ent = &auxtrace_index->entries[i]; |
| @@ -892,12 +901,6 @@ out_free: | |||
| 892 | return err; | 901 | return err; |
| 893 | } | 902 | } |
| 894 | 903 | ||
| 895 | static bool auxtrace__dont_decode(struct perf_session *session) | ||
| 896 | { | ||
| 897 | return !session->itrace_synth_opts || | ||
| 898 | session->itrace_synth_opts->dont_decode; | ||
| 899 | } | ||
| 900 | |||
| 901 | int perf_event__process_auxtrace_info(struct perf_tool *tool __maybe_unused, | 904 | int perf_event__process_auxtrace_info(struct perf_tool *tool __maybe_unused, |
| 902 | union perf_event *event, | 905 | union perf_event *event, |
| 903 | struct perf_session *session) | 906 | struct perf_session *session) |
