[Buildroot] debugging threads
Will Wagner
will_wagner at carallon.com
Tue Sep 4 10:55:03 UTC 2007
I solved this, it was a problem with gdb & gdbserver not being rebuilt
when you change the uClibc option to allow thread debugging. A rebuild
from scratch fixed the problem.
Will.
Will Wagner wrote:
> Hello,
>
> I am trying to debug a multithreaded app and am having some problems.
> I've hunted around how to do this and have done the following:
>
> Built uClibc with debug threads on so have a libthread_db.so
> Built gdbserver for target
>
> I then execute gdbserver with:
> gdbserver 192.168.42.15:2345 /usr/sbin/threaded_test
>
> On the host machine I run:
> ~/buildroot/build_i686/staging_dir/usr/bin/i686-linux-gdb ~/threaded_test
>
> Once gdb starts I point it to the shared libs with:
> set solib-absolute-prefix ~/buildroot/project_build_i686/uclibc/root
>
> Then connect to gdbserver with
> target remote 192.168.42.101:2345
>
> I am able to debug the application until a call to create a thread
> (pthread_create) when I get the following error:
>
> Program received signal SIG32, Real-time event 32.
> 0xb7ef0175 in sigsuspend ()
> from
> /home/willw/buildroot/project_build_i686/uclibc/root/lib/libc.so.0
> (gdb) bt
> #0 0xb7ef0175 in sigsuspend ()
> from
> /home/willw/buildroot/project_build_i686/uclibc/root/lib/libc.so.0
> #1 0xb7faf6a4 in __pthread_wait_for_restart_signal ()
> from
> /home/willw/buildroot/project_build_i686/uclibc/root/lib/libpthread.so.0
> #2 0xb7faf6cc in ?? ()
> from
> /home/willw/buildroot/project_build_i686/uclibc/root/lib/libpthread.so.0
> #3 0xb7fb6040 in ?? ()
> from
> /home/willw/buildroot/project_build_i686/uclibc/root/lib/libpthread.so.0
> #4 0xb7fb1de8 in ?? ()
> from
> /home/willw/buildroot/project_build_i686/uclibc/root/lib/libpthread.so.0
> #5 0xbf871718 in ?? ()
> #6 0xb7fafda8 in pthread_create ()
> from
> /home/willw/buildroot/project_build_i686/uclibc/root/lib/libpthread.so.0
> Backtrace stopped: frame did not save the PC
>
>
> Can anyone tell me what step I am missing to get thread debugging
> working? From searching on the net it seems the libthread_db is needed
> but it doesn't seem to be loaded by gdb.
>
> Many thanks,
>
> Will.
>
--
------------------------------------------------------------------------
Will Wagner will_wagner at carallon.com
Senior Project Engineer Office Tel: +44 (0)20 7371 2032
Carallon Ltd, Studio G20, Shepherds Building, Rockley Rd, London W14 0DA
------------------------------------------------------------------------
More information about the buildroot
mailing list