Re: [BUG] perf report: fails to symbolize when vaddr is non zero for shared objects

From: Arnaldo Carvalho de Melo
Date: Wed Jun 17 2015 - 15:24:32 EST


Em Wed, Jun 17, 2015 at 11:54:12AM -0700, Stephane Eranian escreveu:
> On Tue, Jun 16, 2015 at 7:34 AM, Arnaldo Carvalho de Melo <acme@xxxxxxxxxx> wrote:
> > Em Tue, Jun 16, 2015 at 12:03:01AM -0700, Stephane Eranian escreveu:
> >> If you get samples in the shared lib, they will be off, possibly
> >> attributed to the wrong
> >> functions.
> >>
> >> Could this be fixed quickly?
> >
> > You tell me, do you have a patch to propose? :-)

> Well, need to make sure I understand the code flow in dso__load_sym()
> and callers.

> You have elf_read_maps() which seems to be reading the phdr but, it
> would need to be called systematically for ET_DYN. I will experiment
> with this.

> Worst case, we need to add another function to read the phdr and use
> the p_vaddr.

Ok, that symbols* code grew unwieldly complex, need to give it some love and
refactoring care at some point...

Thanks!

- Arnaldo
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/