This is the mail archive of the ecos-discuss@sourceware.org mailing list for the eCos project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Debugging arm-eabi - no stack frame?


Stanislav Meduna <stano@meduna.org> writes:

> Nick Garnett wrote:
> 
> >> I am unable to do any backtraces (the emulator barfs
> >> at trying to access adresses 0xfffffffc - f).
> > 
> > Exactly how does it barf?
> 
> Bus read error, can not find corresponding bank for addr 0xfffffffc,pc=0x80000dfc
> Bus read error, can not find corresponding bank for addr 0xfffffffd,pc=0x80000dfc
> Bus read error, can not find corresponding bank for addr 0xfffffffe,pc=0x80000dfc
> Bus read error, can not find corresponding bank for addr 0xffffffff,pc=0x80000dfc

Presumably these come from skyeye itself.

> 
> I tried to alter values returned by the emulator for invalid memory,
> this did not help.
> 
> The access itself is not a problem, the emulator informs
> me of it, but does not generate any exception or such, it simply
> returns something.

Returning zero should cause GDB to eventually stop trying. You could
try returning a value that corresponds to a valid address that would
be outside your executable. That might also make GDB behave properly.

> 
> > GDB has a somewhat nasty heuristic to try and do backtraces in the
> > presence of compiler optimization. To do this it may access memory by
> > treating values it finds on the stack and in registers as
> > pointers. Sometimes these will point at invalid locations.
> 
> OK, this is certainly a possibility. However, its heuristics
> seems to fail:
> 
> (gdb) where
> #0  test1 () at nxttests.cxx:34
> #1  0x00000000 in ?? ()
> 
> i.e. it does not even know that the test1() was called from main()
> The #1 address varies according to what the "invalid" access returns.
> 
> There is no -O in my compilation flags.

In my experience of using the same set of tools, albeit mainly for
Cortex-M, they seem to generate backtraces correctly. So I'm afraid
I'm out of ideas. Perhaps someone else has seen the same problem and
can help.


-- 
Nick Garnett                                       eCos Kernel Architect
eCosCentric Limited    http://www.eCosCentric.com       The eCos experts
Barnwell House, Barnwell Drive, Cambridge, UK.      Tel: +44 1223 245571
Registered in England and Wales:                         Reg No: 4422071


-- 
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]