[PATCH v1 0/6] config file/command line for objdump & addr2line

Ian Rogers posted 6 patches 2 years, 10 months ago
tools/perf/Documentation/perf-annotate.txt |  3 ++
tools/perf/Documentation/perf-config.txt   |  8 +++-
tools/perf/Documentation/perf-report.txt   |  3 ++
tools/perf/Documentation/perf-top.txt      |  6 +++
tools/perf/arch/common.c                   |  4 +-
tools/perf/arch/common.h                   |  2 +-
tools/perf/builtin-annotate.c              | 42 +++++++++++++-------
tools/perf/builtin-report.c                | 35 ++++++++++++++---
tools/perf/builtin-top.c                   | 27 +++++++++++--
tools/perf/util/annotate.c                 | 45 +++++++++++++++++-----
tools/perf/util/annotate.h                 |  9 +++--
tools/perf/util/srcline.c                  | 26 ++++++++-----
tools/perf/util/symbol_conf.h              |  1 +
13 files changed, 163 insertions(+), 48 deletions(-)
[PATCH v1 0/6] config file/command line for objdump & addr2line
Posted by Ian Rogers 2 years, 10 months ago
Allow objdump to be set as a perf config file variable. As previously
objdump was set via the command line, the string was owned by
argv. Now the string must be strdup-ed, so the corresponding logic
needs changing with an annotation_options__init/exit.

Add command line and config file options for addr2line, set in
symbol_conf for convenience. This doesn't allow the setting of
llvm-addr2line due to a bug, but could in the future.

Ian Rogers (6):
  perf annotate: Delete session for debug builds
  perf report: Additional config warnings
  perf annotate: Add init/exit to annotation_options remove default
  perf annotate: Own objdump_path and disassembler_style strings
  perf annotate: Allow objdump to be set in perfconfig
  perf symbol: Add command line support for addr2line path

 tools/perf/Documentation/perf-annotate.txt |  3 ++
 tools/perf/Documentation/perf-config.txt   |  8 +++-
 tools/perf/Documentation/perf-report.txt   |  3 ++
 tools/perf/Documentation/perf-top.txt      |  6 +++
 tools/perf/arch/common.c                   |  4 +-
 tools/perf/arch/common.h                   |  2 +-
 tools/perf/builtin-annotate.c              | 42 +++++++++++++-------
 tools/perf/builtin-report.c                | 35 ++++++++++++++---
 tools/perf/builtin-top.c                   | 27 +++++++++++--
 tools/perf/util/annotate.c                 | 45 +++++++++++++++++-----
 tools/perf/util/annotate.h                 |  9 +++--
 tools/perf/util/srcline.c                  | 26 ++++++++-----
 tools/perf/util/symbol_conf.h              |  1 +
 13 files changed, 163 insertions(+), 48 deletions(-)

-- 
2.40.0.348.gf938b09366-goog
Re: [PATCH v1 0/6] config file/command line for objdump & addr2line
Posted by Arnaldo Carvalho de Melo 2 years, 10 months ago
Em Tue, Mar 28, 2023 at 04:55:37PM -0700, Ian Rogers escreveu:
> Allow objdump to be set as a perf config file variable. As previously
> objdump was set via the command line, the string was owned by
> argv. Now the string must be strdup-ed, so the corresponding logic
> needs changing with an annotation_options__init/exit.

ui/gtk/annotate.c: In function ‘symbol__gtk_annotate’:
ui/gtk/annotate.c:177:44: error: ‘annotation__default_options’ undeclared (first use in this function); did you mean ‘annotation_options’?
  177 |         err = symbol__annotate(ms, evsel, &annotation__default_options, NULL);
      |                                            ^~~~~~~~~~~~~~~~~~~~~~~~~~~
      |                                            annotation_options
ui/gtk/annotate.c:177:44: note: each undeclared identifier is reported only once for each function it appears in
make[6]: *** [/var/home/acme/git/perf-tools-next/tools/build/Makefile.build:97: ui/gtk/annotate.o] Error 1
make[6]: *** Waiting for unfinished jobs....


I'll fix this later...

- Arnaldo
 
> Add command line and config file options for addr2line, set in
> symbol_conf for convenience. This doesn't allow the setting of
> llvm-addr2line due to a bug, but could in the future.
> 
> Ian Rogers (6):
>   perf annotate: Delete session for debug builds
>   perf report: Additional config warnings
>   perf annotate: Add init/exit to annotation_options remove default
>   perf annotate: Own objdump_path and disassembler_style strings
>   perf annotate: Allow objdump to be set in perfconfig
>   perf symbol: Add command line support for addr2line path
> 
>  tools/perf/Documentation/perf-annotate.txt |  3 ++
>  tools/perf/Documentation/perf-config.txt   |  8 +++-
>  tools/perf/Documentation/perf-report.txt   |  3 ++
>  tools/perf/Documentation/perf-top.txt      |  6 +++
>  tools/perf/arch/common.c                   |  4 +-
>  tools/perf/arch/common.h                   |  2 +-
>  tools/perf/builtin-annotate.c              | 42 +++++++++++++-------
>  tools/perf/builtin-report.c                | 35 ++++++++++++++---
>  tools/perf/builtin-top.c                   | 27 +++++++++++--
>  tools/perf/util/annotate.c                 | 45 +++++++++++++++++-----
>  tools/perf/util/annotate.h                 |  9 +++--
>  tools/perf/util/srcline.c                  | 26 ++++++++-----
>  tools/perf/util/symbol_conf.h              |  1 +
>  13 files changed, 163 insertions(+), 48 deletions(-)
> 
> -- 
> 2.40.0.348.gf938b09366-goog
> 

-- 

- Arnaldo