Messages in this thread | | | From | Namhyung Kim <> | Date | Mon, 12 Oct 2015 21:35:08 +0900 | Subject | Re: [PATCH 2/5] perf: unwind: pass symbol source to libunwind |
| |
Hi Jiri,
On Mon, Oct 12, 2015 at 8:24 PM, Jiri Olsa <jolsa@redhat.com> wrote: > On Sun, Sep 27, 2015 at 08:37:56PM +0200, Rabin Vincent wrote: >> Even if --symfs is used to point to the debug binaries, we send in the >> non-debug filenames to libunwind, which leads to libunwind not finding >> the debug frame. Fix this. >> >> Signed-off-by: Rabin Vincent <rabin.vincent@axis.com> > > cc-ing Namhyung on this one
It seems that the dso->symsrc_filename can be NULL and it's unsafe to call dwarf_find_debug_frame() with the NULL pointer. Other than that looks good to me.
Thanks, Namhyung
>> --- >> tools/perf/util/unwind-libunwind.c | 2 +- >> 1 file changed, 1 insertion(+), 1 deletion(-) >> >> diff --git a/tools/perf/util/unwind-libunwind.c b/tools/perf/util/unwind-libunwind.c >> index ef799dc..b93bf7f 100644 >> --- a/tools/perf/util/unwind-libunwind.c >> +++ b/tools/perf/util/unwind-libunwind.c >> @@ -363,7 +363,7 @@ find_proc_info(unw_addr_space_t as, unw_word_t ip, unw_proc_info_t *pi, >> dso__data_put_fd(map->dso); >> >> memset(&di, 0, sizeof(di)); >> - if (dwarf_find_debug_frame(0, &di, ip, base, map->dso->name, >> + if (dwarf_find_debug_frame(0, &di, ip, base, map->dso->symsrc_filename, >> map->start, map->end)) >> return dwarf_search_unwind_table(as, ip, &di, pi, >> need_unwind_info, arg); >> -- >> 1.7.10.4 >> >> -- >> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in >> the body of a message to majordomo@vger.kernel.org >> More majordomo info at http://vger.kernel.org/majordomo-info.html >> Please read the FAQ at http://www.tux.org/lkml/
-- Thanks, Namhyung
| |