[RFC PATCH 2/8] perf probe powerpc: Fix symbol fixup issues due to ELF type
Michael Ellerman
mpe at ellerman.id.au
Wed Dec 10 20:50:50 AEDT 2014
On Tue, 2014-12-09 at 23:04 +0530, Naveen N. Rao wrote:
> If using the symbol table, symbol addresses are not being fixed up
> properly, resulting in probes being placed at wrong addresses:
>
> # perf probe do_fork
> Added new event:
> probe:do_fork (on do_fork)
>
> You can now use it in all perf tools, such as:
>
> perf record -e probe:do_fork -aR sleep 1
>
> # cat /sys/kernel/debug/tracing/kprobe_events
> p:probe/do_fork _text+635952
> # printf "%x" 635952
> 9b430
> # grep do_fork /boot/System.map
> c0000000000ab430 T .do_fork
OK, but why is that happening? And why does checking for ET_DYN fix it?
> Fix by checking for ELF type ET_DYN used by ppc64 kernels.
We sometimes produce ET_DYN kernels, but only if CONFIG_RELOCATABLE=y.
cheers
More information about the Linuxppc-dev
mailing list