Debugging on the device (was: GPS receiver problem after N800 flash)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

ext Benjam? Villoslada wrote:
> El Diumenge 01 Abril 2007 22:32, Marius Gedminas va escriure:
>> Anyway, gdb /usr/bin/maemo-mapper 1234 will attach itself to the running
>> process (replace 1234 with the real PID), and then 'bt' will show the
>> stack trace.  At least that's how you do it on a normal system.  I don't
>> really know if Maemo has any specifics.

The latest SDK version (released last week) has documentation on how
to do debugging on the device:
  http://maemo.org//platform/docs/howtos/howto_debugging_guide_bora.html


> Seem that worked, thanks! :)
> 
> Here results from different moments:
> 
> * Stop when saying "Establishing GPS fix":
> 
> (gdb) bt
> #0  0x410ce6f4 in poll () from /lib/libc.so.6
> #1  0x411569e0 in g_main_context_acquire () from /usr/lib/libglib-2.0.so.0
> #2  0x00000000 in ?? ()
> 
> * Start program, stablish GPS connection and I touch any key:
> 
> (gdb) bt
> #0  0x410e28c0 in pthread_equal () from /lib/libc.so.6
> #1  0x414f66e4 in _XEventsQueued () from /usr/lib/libX11.so.6
> #2  0x00000008 in ?? ()
> #3  0x00000008 in ?? ()
> Previous frame identical to this frame (corrupt stack?)
> 
> Idem:
> 
> (gdb) bt
> #0  0x411569ac in g_main_context_acquire () from /usr/lib/libglib-2.0.so.0
> #1  0xfffffffe in ?? ()
> #2  0xfffffffe in ?? ()
> Previous frame identical to this frame (corrupt stack?)
> 
> * Opening menu (menu strip goes blank):
> 
> (gdb) bt
> #0  0x410ce6f4 in poll () from /lib/libc.so.6
> #1  0x411569e0 in g_main_context_acquire () from /usr/lib/libglib-2.0.so.0
> #2  0x00000000 in ?? ()
> 
> Idem:
> 
> (gdb) bt
> #0  0x41169a34 in g_static_private_get () from /usr/lib/libglib-2.0.so.0
> #1  0x00000000 in ?? ()
> 
> * Start program, stablish GPS connection, and push center button:
> 
> (gdb) bt
> #0  0x41154ae8 in g_main_context_check () from /usr/lib/libglib-2.0.so.0
> #1  0x410e2cd8 in __librt_disable_asynccancel () from /lib/libc.so.6
> #2  0x411b04d4 in ?? () from /usr/lib/libglib-2.0.so.0
> 
> Is useful? :)

You need debug symbols to get correct backtraces on ARM (or to recompile
the libraries&binaries with -fno-omit-frame-pointer). See the debugging
documentation.

In general without debug symbols the only thing you can trust on an ARM
backtrace is that the first _library_ is correct, the first function
might also be correct, but you cannot trust even that (if it was a
static one, Gdb will show a name of an exported fuction which address
is before the static one).


	- Eero



[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Big List of Linux Books]    

  Powered by Linux