perf srcline: Use long-running addr2line per DSO
authorTony Garnock-Jones <tonyg@leastfixedpoint.com>
Thu, 16 Sep 2021 12:09:39 +0000 (14:09 +0200)
committerSalvatore Bonaccorso <carnil@debian.org>
Tue, 18 Jan 2022 21:31:03 +0000 (21:31 +0000)
commit0845a1fd668845c2aa6785f8f120a014b43e2a51
tree9f333bbadd736a76ed788dccd94e754aff59deb9
parenta1027de83cb80ff0422c74bc883af4fcf2b71cb2
perf srcline: Use long-running addr2line per DSO

Origin: https://git.kernel.org/linus/be8ecc57f180415e8a7c1cc5620c5236be2a7e56
Bug-Debian: https://bugs.debian.org/911815

Invoking addr2line in a separate subprocess, one for each required
lookup, takes a terribly long time.

This patch introduces a long-running addr2line process for each DSO,
*DRAMATICALLY* speeding up runs of perf.

What used to take tens of minutes now takes tens of seconds.

Debian bug report about this issue:

  https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=911815

Signed-off-by: Tony Garnock-Jones <tonyg@leastfixedpoint.com>
Tested-by: Ian Rogers <irogers@google.com>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Link: https://lore.kernel.org/r/20210916120939.453536-1-tonyg@leastfixedpoint.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Gbp-Pq: Topic bugfix/all
Gbp-Pq: Name perf-srcline-Use-long-running-addr2line-per-DSO.patch
tools/perf/util/srcline.c