Re: [OT] backtrace

From: Keith Owens (kaos@sgi.com)
Date: Thu Oct 03 2002 - 04:38:09 EST


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/



This archive was generated by hypermail 2b29 : Mon Oct 07 2002 - 22:00:38 EST