Currently, intel_pt_process_auxtrace_info() sets synth_opts.callchain for
use_browser != -1, which is not accurate after we set use_browser to 0 in
cmd_script(). As a result, the following commands sees a lot more errors
like:

  perf record -e intel_pt//u -C 10 -- sleep 3
  perf script

  ...
  instruction trace error type 1 time ...
  ...

This patch fixes this by checking use_browser > 0 instead.

Fixes: c1c9b9695cc8 ("perf script: Allow extended console debug output")
Reported-by: David Carrillo Cisneros <davi...@fb.com>
Cc: Milian Wolff <milian.wo...@kdab.com>
Cc: Jiri Olsa <jo...@kernel.org>
Cc: Arnaldo Carvalho de Melo <a...@redhat.com>
Cc: Adrian Hunter <adrian.hun...@intel.com>
Signed-off-by: Song Liu <songliubrav...@fb.com>
---
 tools/perf/util/intel-pt.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/tools/perf/util/intel-pt.c b/tools/perf/util/intel-pt.c
index 6d288237887b..15692c104ca8 100644
--- a/tools/perf/util/intel-pt.c
+++ b/tools/perf/util/intel-pt.c
@@ -2588,7 +2588,7 @@ int intel_pt_process_auxtrace_info(union perf_event 
*event,
        } else {
                itrace_synth_opts__set_default(&pt->synth_opts,
                                session->itrace_synth_opts->default_no_sample);
-               if (use_browser != -1) {
+               if (use_browser > 0) {
                        pt->synth_opts.branches = false;
                        pt->synth_opts.callchain = true;
                }
-- 
2.17.1

Reply via email to