Re: [OT] backtrace

From: Mike Galbraith (efault@gmx.de)
Date: Thu Oct 03 2002 - 05:03:27 EST


At 07:38 PM 10/3/2002 +1000, Keith Owens wrote:
>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.

IIRC, r~ once mentioned that it was going to get worse. He also mentioned
dwarf2 (sp) as a possible solution. Did you ever look into that?

         -Mike

(I didn't. Elf->Dwarf transmogrification of kernel is way out of my league)

-
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