This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

Backtrace stopped: previous frame identical to this frame (corrupt stack?)

I can no longer step through code in the command line gdb client (nor the one in Eclipse CDT).

Eliots-MacBook-Pro:pure-gcc Eliot$ ./gdb_client.sh 
GNU gdb (GNU Tools for ARM Embedded Processors) 7.6.0.20131129-cvs
Copyright (C) 2013 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <gnu.org/.../gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "--host=x86_64-apple-darwin10 --target=arm-none-eabi".
For bug reporting instructions, please see:
<www.gnu.org/.../>...
Reading symbols from /Users/Eliot/dev/bike/device-nordic/pure-gcc/_build/device-nordic_s110.elf...done.
0x20000008 in ?? ()
Loading section .text, size 0x14e84 lma 0x14000
Loading section .ARM.exidx, size 0x8 lma 0x28e84
Loading section .data, size 0x10c lma 0x28e8c
Loading section .jcr, size 0x4 lma 0x28f98
Start address 0x14198, load size 85916
Transfer rate: 41951 KB/sec, 9546 bytes/write.
Resetting target
Breakpoint 1 at 0x17662: file ../main.c, line 96.
(gdb) break gsm_position
Breakpoint 2 at 0x1718e: file ../gsm_ublox_sara.c, line 479.
(gdb) continue
Continuing.

Breakpoint 1, main () at ../main.c:96
96	    uint32_t count = 0;
(gdb) continue
Continuing.

Breakpoint 2, gsm_position (p_device_id=0x200033bc <m_device_id> "7745bc8abf72ccd4", p_config=0x200033b4 <m_device_config>, p_position=0x2000339c <m_position>)
    at ../gsm_ublox_sara.c:479
479		debug_led_on(PIN_LED_GSM_HTTP);
(gdb) next
^C
Program received signal SIGTRAP, Trace/breakpoint trap.
0x20000008 in ?? ()
(gdb) bt full
#0  0x20000008 in ?? ()
No symbol table info available.
#1  0x0000960e in ?? ()
No symbol table info available.
#2  0x0000960e in ?? ()
No symbol table info available.
Backtrace stopped: previous frame identical to this frame (corrupt stack?)
(gdb)

When I type 'next', nothing happens. I have to hit Ctrl-C to get the gdb prompt back. Then I can't see the stack.

I also get nothing from addr2line on those addresses, although it looks from my map file like 0x20000008 is in the soft device bit of .data.

Eliots-MacBook-Pro:pure-gcc Eliot$ ~/dev/gcc-arm-none-eabi-4_8-2013q4/bin/arm-none-eabi-addr2line -e _build/device-nordic_s110.elf 0x2000000a
??:0
Eliots-MacBook-Pro:pure-gcc Eliot$ ~/dev/gcc-arm-none-eabi-4_8-2013q4/bin/arm-none-eabi-addr2line -e _build/device-nordic_s110.elf 0x0000960e
??:0

My gdb_client.sh is simply:

#!/bin/sh

/Users/Eliot/dev/gcc-arm-none-eabi-4_8-2013q4/bin/arm-none-eabi-gdb _build/device-nordic_s110.elf

and my .gdbinit:

target remote localhost:2331
load
mon reset
break main
Parents Reply Children
Related