lkml.org 
[lkml]   [2014]   [Nov]   [10]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH 2/3] perf symbol: Implement a very simple ELF symbol parser
Em Mon, Nov 10, 2014 at 03:36:48PM +0900, Namhyung Kim escreveu:
> Hi Arnaldo,
>
> On Fri, 7 Nov 2014 12:26:18 -0300, Arnaldo Carvalho de Melo wrote:
> > Em Fri, Nov 07, 2014 at 02:20:05PM +0900, Namhyung Kim escreveu:
> >> It'll be used to show (userspace) symbol names when libelf isn't (or
> >> cannot be) linked.
> >
> > Does this deals with prelink, etc?
>
> I believe so. :)
>
> >
> >> # Overhead Command Shared Object Symbol
> >> # ........ .......... ................. .........................
> >> #
> >> 37.01% mem-memcpy libc-2.17.so [.] __memcpy_ssse3_back
>
> namhyung@sejong:linux$ readelf -WS /lib64/libc-2.17.so | grep prelink
> [41] .gnu.prelink_undo PROGBITS 0000000000000000 200368 000c30 01 0 0 8
>
> namhyung@sejong:linux$ nm /lib64/libc-2.17.so | grep __memcpy_ssse3_back
> 0000003153f46f40 t __memcpy_ssse3_back

Right, in this case most of the samples seems to map to what is expected
for that workload, and the binary was prelinked. Good.

What about binaries that are not prelinked? IIRC there is code in the
full blown ELF symbol-elf.c file to detect that and act accordingly,
from a _very_ quick look I didn't saw it in this minimalistic ELF symtab
reader, hence my question.

- Arnaldo

>
> Thanks,
> Namhyung
>
>
> >> 24.25% perf ld-2.17.so [.] _dl_relocate_object
> >> 22.16% perf [kernel.kallsyms] [k] kmem_cache_alloc
> >> 14.29% mem-memset libc-2.17.so [.] __memset_sse2
> >> 2.21% perf [kernel.kallsyms] [k] flush_signal_handlers
> >> 0.07% perf [kernel.kallsyms] [k] intel_pmu_enable_all


\
 
 \ /
  Last update: 2014-11-10 13:41    [W:0.082 / U:0.280 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site