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.
