[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [issues] arm gdb backtrace for read syscall
- To: Carlos O'Donell <carlos@xxxxxxxxxxxxxxxx>
- Subject: Re: [issues] arm gdb backtrace for read syscall
- From: Matthieu CASTET <matthieu.castet@xxxxxxxxxx>
- Date: Mon, 20 Oct 2008 18:20:12 +0200
Carlos O'Donell a écrit :
> On Mon, Oct 20, 2008 at 10:38 AM, Matthieu CASTET
> <matthieu.castet@xxxxxxxxxx> wrote:
>> (gdb) thread 2
>> [Switching to thread 2 (Thread 723)]#0 0x40033844 in read ()
>> from /opt/arm-eglibc/arm-none-linux-gnueabi/libc/lib/libpthread.so.0
>> Current language: auto; currently asm
>> (gdb) bt
>> #0 0x40033844 in read ()
>> from /opt/arm-eglibc/arm-none-linux-gnueabi/libc/lib/libpthread.so.0
>> #1 0x400330ac in __pthread_enable_asynccancel () at cancellation.c:42
>> #2 0x00000000 in ?? ()
>>
>
> Thanks for the test case.
>
> Are you using stripped libraries?
>
On the target the libraries are stripped but not on the host.
> Is there any debug information in the libraries?
Yes
For example for the pthread_join, I got [1]. Also there is debug
sections [2].
Didn't you manage to reproduce it ?
May be gdb use debug_frame infos, and the PSEUDO macro in
ports/sysdeps/unix/sysv/linux/arm/eabi/nptl/sysdep-cancel.h miss cfi
annotation .
So gdb get lost by the push/pop in this function.
Matthieu
[1]
Program received signal SIGINT, Interrupt.
0x4002b8b8 in pthread_join (threadid=0x4095d490, thread_return=0xbecfdd64)
at pthread_join.c:89
89 lll_wait_tid (pd->tid);
[2]
$ readelf -S
/opt/arm-eglibc/arm-none-linux-gnueabi/libc/lib/libpthread-2.7.so |grep
debug
[29] .debug_aranges PROGBITS 00000000 014df0 001510 00
0 0 8
[30] .debug_pubnames PROGBITS 00000000 016300 0027fb 00
0 0 1
[31] .debug_info PROGBITS 00000000 018afb 0672b5 00
0 0 1
[32] .debug_abbrev PROGBITS 00000000 07fdb0 010a03 00
0 0 1
[33] .debug_line PROGBITS 00000000 0907b3 01533d 00
0 0 1
[34] .debug_frame PROGBITS 00000000 0a5af0 00218c 00
0 0 4
[35] .debug_str PROGBITS 00000000 0a7c7c 006ae2 01 MS
0 0 1
[36] .debug_loc PROGBITS 00000000 0ae75e 016f79 00
0 0 1
[37] .debug_ranges PROGBITS 00000000 0c56d8 003578 00
0 0 8