This is the mail archive of the
gdb@sourceware.org
mailing list for the GDB project.
Get rid of: Previous frame identical to this frame (corrupt stack?) when using kernel-level stepping
- From: Emmanuel Michon <emmanuel dot michon at polytechnique dot org>
- To: gdb at sourceware dot org
- Date: Tue, 1 Sep 2009 16:40:49 +0200
- Subject: Get rid of: Previous frame identical to this frame (corrupt stack?) when using kernel-level stepping
Hello,
I'm almost exclusively using gdb 6.8 and sde-gdb as a cross debugger
to a MIPS JTAG interface.
This comes very handy to debug interrupt vectors or assembly code, and
there are many relevant cases where the stack consistency `a la mips' is
not enforced all the time:
* when you're stepping in the code that sets up the stack,
* when you run simple o32 compliant LEAF routines that use a0..a3 they
don't need
$sp to be setup,
* when you run FORTH or stuff that just uses registers a different way.
If `Previous frame identical...' message was just a warning I wouldn't care,
but it prevents the code that changes $pc to the location you want to
complete (set $pc,
or load, etc).
In my daily experience e.g. JTAG-level debugging, symbolic information
(proper stack display,
displaying char* sometimes following bad pointers) is often a
nuisance, but accurate `step instruction'
and breakpoint a must.
I tried stuff like set trust-frame-pointer 1,
set language assembly,
but could never work this around.
Am I wrong in what I try to do?
Do you have a suggestion?
--
Très sincèrement,
e.m.