[PATCH 3/3] perf: parse the .debug_frame section in case .eh_frame is not present

Jean Pihet jean.pihet at linaro.org
Thu Sep 5 11:29:48 EDT 2013


Hi,

On 5 September 2013 15:33, Jean Pihet <jean.pihet at linaro.org> wrote:
> On 5 September 2013 15:19, Will Deacon <will.deacon at arm.com> wrote:
>> On Thu, Sep 05, 2013 at 02:17:30PM +0100, Ard Biesheuvel wrote:
>>> On 5 September 2013 15:05, Jean Pihet <jean.pihet at newoldbits.com> wrote:
>>> [..]
>>> > Here are the commands I have been using:
>>> >  perf record -g dwarf -- <binary to profile>
>>> >  perf report --sort symbol --call-graph --stdio
>>> >
>>>
>>> Ah, I failed to add the 'dwarf' after -g, however, in that case, my
>>> perf report segfaults:
>>
>> Same SEGV here.
> Ouch! I never got the segfault on my side.

The segfault is caused by libunwind. With the latest version [1],
dwarf unwinding works fine.
Investigation on-going, more to come!

[1] git://git.sv.gnu.org/libunwind.git

Regards,
Jean

>
> Here is the setup I am using:
> - OMAP4 Pandaboard,
> - 13.07 Ubuntu dist from http://www.linaro.org/downloads/,
> - 3.11 mainline kernel + 3 patches for unwinding info,
> - patched perf tool,
> - dbg flavor of the libs installed. Without them installed I do not
> get the address resolved but no segfaults
>
> Can you check if the linked libraries contain the .debug_frame
> sections? (ldd; readelf -S /lib/arm-linux-gnueabihf/libc-2.17.so|grep
> debug_frame; readelf -S
> /usr/lib/debug/lib/arm-linux-gnueabihf/libc-2.17.so|grep debug_frame)?
>
>>
>> Will
>
> Jean



More information about the linux-arm-kernel mailing list