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>
Sun, 30 Jan 2022 10:14:49 +0000 (10:14 +0000)
commitc801b1d316e8a85df77bc879c8bf4b6a4e4b3e17
tree6ba493d574778932996d3bdeb7253d0666b3b4b2
parent8331cc2410dfb854178e5bc42d8aa1d650a82ddc
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