mirror of
https://github.com/edk2-porting/linux-next.git
synced 2025-01-07 13:13:57 +08:00
perf: unwind: Fix symfs with libdw
Pass the full path including the symfs (if any) to libdw. Without this unwinding fails with errors like this when a symfs is used: unwind: failed with 'No such file or directory'" Signed-off-by: Vincent Whitchurch <vincent.whitchurch@axis.com> Acked-by: Namhyung Kim <namhyung@kernel.org> Cc: Mark Rutland <mark.rutland@arm.com> Cc: kernel@axis.com Cc: Ian Rogers <irogers@google.com> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Adrian Hunter <adrian.hunter@intel.com> Cc: Arnaldo Carvalho de Melo <acme@kernel.org> Cc: Jiri Olsa <jolsa@kernel.org> Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com> Cc: Ingo Molnar <mingo@redhat.com> Link: https://lore.kernel.org/r/20230630-perf-libdw-symfs-v2-1-469760dd4d5b@axis.com Signed-off-by: Namhyung Kim <namhyung@kernel.org>
This commit is contained in:
parent
78a175c462
commit
5f06267b6e
@ -66,9 +66,13 @@ static int __report_module(struct addr_location *al, u64 ip,
|
||||
mod = 0;
|
||||
}
|
||||
|
||||
if (!mod)
|
||||
mod = dwfl_report_elf(ui->dwfl, dso->short_name, dso->long_name, -1,
|
||||
if (!mod) {
|
||||
char filename[PATH_MAX];
|
||||
|
||||
__symbol__join_symfs(filename, sizeof(filename), dso->long_name);
|
||||
mod = dwfl_report_elf(ui->dwfl, dso->short_name, filename, -1,
|
||||
map__start(al->map) - map__pgoff(al->map), false);
|
||||
}
|
||||
if (!mod) {
|
||||
char filename[PATH_MAX];
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user