[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <ZCs1/skb2XqDYrYF@kernel.org>
Date: Mon, 3 Apr 2023 17:24:30 -0300
From: Arnaldo Carvalho de Melo <acme@...nel.org>
To: Ian Rogers <irogers@...gle.com>
Cc: Peter Zijlstra <peterz@...radead.org>,
Ingo Molnar <mingo@...hat.com>,
Mark Rutland <mark.rutland@....com>,
Alexander Shishkin <alexander.shishkin@...ux.intel.com>,
Jiri Olsa <jolsa@...nel.org>,
Namhyung Kim <namhyung@...nel.org>,
Adrian Hunter <adrian.hunter@...el.com>,
Nathan Chancellor <nathan@...nel.org>,
Nick Desaulniers <ndesaulniers@...gle.com>,
Tom Rix <trix@...hat.com>, linux-kernel@...r.kernel.org,
linux-perf-users@...r.kernel.org, llvm@...ts.linux.dev
Subject: Re: [PATCH v2 0/4] Support for llvm-addr2line
Em Mon, Apr 03, 2023 at 11:40:29AM -0700, Ian Rogers escreveu:
> The addr2line command is started and then addresses piped to it. In
> order to determine the end of a addr2lines output a ',' it output with
> an expectation to get '??\n??:0\n' as a reply. llvm-addr2line differs
> in that ',' generates a reply of ','.
>
> The approach detects and then caches the addr2line style. When records
> are read the sentinel is detected appropriately.
>
> Comparing the output there is a little more inline data on my machine
> with llvm-addr2line:
> $ sudo perf record -a -g sleep 1
> $ sudo perf report --addr2line=addr2line > a.txt
> $ sudo perf report --addr2line=llvm-addr2line > b.txt
> $ wc -l a.txt b.txt
> 12386 a.txt
> 12477 b.txt
>
> Some other small changes, switching to the api/io code to avoid file
> streams wrapping the command's stdin/stdout. Ignore SIGPIPE for when
> addr2line exits and writes fail.
>
> v2. Address review comments from Arnaldo and Namhyung, fixing a
> realloc error path, argument ordering and a comment.
Added to local repo, build testing, will be in tmp.perf-tools-next soon.
- Arnaldo
> Ian Rogers (4):
> tools api: Add io__getline
> perf srcline: Simplify addr2line subprocess
> perf srcline: Support for llvm-addr2line
> perf srcline: Avoid addr2line SIGPIPEs
>
> tools/lib/api/io.h | 45 ++++++++++
> tools/perf/tests/api-io.c | 36 ++++++++
> tools/perf/util/srcline.c | 171 +++++++++++++++++++++++---------------
> 3 files changed, 184 insertions(+), 68 deletions(-)
>
> --
> 2.40.0.348.gf938b09366-goog
>
--
- Arnaldo
Powered by blists - more mailing lists