Since updating our base package set with newer versions in an attempt to
keep current, it seems I've broken the backtrace display in the kernel.
I’m seeing backtraces that don’t show all frames, even when those frames
are in my driver code. Have anyone else seen this? I’m building with
–DDEBUG as well as “–g” and “-no-omit-frame-pointer”. But even with all
this, the backtrace in the example below is still missing a function.
I dumped out the stack and verified that not only are the missing frames
present, but that the frame pointers (EBP) are also getting saved on the
stack.
Particularly bad is the wrong arguments are getting shown for the few
functions that it chooses to display.
Here's my code's gcc args:
gcc -Wall -Werror -g -O -I /usr/kahuna/include -I
/usr/kahuna/include/inilib -I/usr/src/linux/include
-I/usr/kahuna/include/drivers -I./ -I../ -D__KERNEL__ -DMODULE -D__SMP__
-DSMP -DKAHUNA_ASIC_BOARD -DEXPORT_SYMTAB -D__SMP__ -DSMP -DDEBUG
-Wstrict-prototypes -DCPU586 -I /usr/kahuna/include -I
/usr/kahuna/include/inilib -I/usr/src/linux/include
-I/usr/kahuna/include/drivers -I./ -I../ *-fno-omit-frame-pointer* -pipe
-include /usr/src/linux/include/linux/config.h -DMODVERSIONS
-D__NO_VERSION__ -include /usr/src/linux/include/linux/modversions.h
-include "cssdev.ver" -Werror -c cssdev_sac.c -o cssdev_sac.o
I'm using kdb-4.3 and gcc 3.3.4, and a 2.4.20 kernel.
Thanks, Bruce
---------------------------
Use http://oss.sgi.com/ecartis to modify your settings or to unsubscribe.
|