[PATCH 6/8] perf annotate: Prefer cmdline option over default config

From: Ravi Bangoria
Date: Thu Feb 13 2020 - 01:44:51 EST


For all the perf-config options that can also be set from command line
option, the preference is given to command line version in case of any
conflict. But that's opposite in case of perf annotate. i.e. the more
preference is given to default option rather than command line option.
Fix it.

Before:

$ ./perf config
annotate.show_nr_samples=false

$ ./perf annotate shash --show-nr-samples
Percentâ
â24: mov -0xc(%rbp),%eax
49.19 â imul $0x1003f,%eax,%ecx
â mov -0x18(%rbp),%rax

After:

Samplesâ
â24: mov -0xc(%rbp),%eax
1 â imul $0x1003f,%eax,%ecx
â mov -0x18(%rbp),%rax

Signed-off-by: Ravi Bangoria <ravi.bangoria@xxxxxxxxxxxxx>
---
tools/perf/builtin-annotate.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/tools/perf/builtin-annotate.c b/tools/perf/builtin-annotate.c
index ea89077bb8e0..6c0a0412502e 100644
--- a/tools/perf/builtin-annotate.c
+++ b/tools/perf/builtin-annotate.c
@@ -566,6 +566,8 @@ int cmd_annotate(int argc, const char **argv)
if (ret < 0)
return ret;

+ annotation_config__init(&annotate.opts);
+
argc = parse_options(argc, argv, options, annotate_usage, 0);
if (argc) {
/*
@@ -605,8 +607,6 @@ int cmd_annotate(int argc, const char **argv)
if (ret < 0)
goto out_delete;

- annotation_config__init(&annotate.opts);
-
symbol_conf.try_vmlinux_path = true;

ret = symbol__init(&annotate.session->header.env);
--
2.24.1