Messages in this thread | | | From | Keith Owens <> | Subject | Re: [OT] backtrace | Date | Thu, 03 Oct 2002 19:38:09 +1000 |
| |
On Thu, 03 Oct 2002 09:31:06 +0100, Padraig Brady <padraig.brady@corvil.com> wrote: >Sorry to go off topic but this tip is just too useful IMHO. >You can do the same in userspace with glibc. Details here: >http://www.iol.ie/~padraiga/backtrace.c
info libc, /backtrace.
Note that certain compiler optimisations may interfere with obtaining a valid backtrace. Function inlining causes the inlined function to not have a stack frame; tail call optimisation replaces one stack frame with another; frame pointer elimination will stop `backtrace' from interpreting the stack contents correctly.
Most architectures compile with -fomit-frame-pointer (except for ARM where RMK does it differently). Neither gdb not glibc can cope with kernel code built with -fomit-frame-pointer. See the horrible heuristics kdb has to apply to get any sort of backtrace on i386.
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |