Re: [RFC PATCH v1.9 07/14] x86/stacktrace: add function for detecting reliable stack traces

From: Josh Poimboeuf
Date: Mon Apr 04 2016 - 13:54:45 EST


On Thu, Mar 31, 2016 at 03:03:16PM +0200, Miroslav Benes wrote:
> On Fri, 25 Mar 2016, Josh Poimboeuf wrote:
>
> > diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
> > index 2dc18605..76274b8 100644
> > --- a/arch/x86/Kconfig
> > +++ b/arch/x86/Kconfig
> > @@ -138,6 +138,7 @@ config X86
> > select HAVE_PERF_REGS
> > select HAVE_PERF_USER_STACK_DUMP
> > select HAVE_REGS_AND_STACK_ACCESS_API
> > + select HAVE_RELIABLE_STACKTRACE if X86_64 && FRAME_POINTER
>
> I understand we have to rely on frame pointer for now. Do you plan to
> switch to dwarf unwinder one day in the future? IOW is there a plan to
> implement dwarf stuff generation in objtool and then to have a dwarf-based
> stack unwinder upstream and to use it for live patching?

Yes, adding DWARF validation and generation to objtool and creating a
DWARF unwinder upstream are all planned, hopefully soon.

> We have FRAME_POINTER unset in SLES for performance reasons (there was
> some 5 percent slowdown measured in the past. However we should redo the
> experiments.) and one day we'd really like to switch to upstream from
> kgraft :). So I'm just asking.

If you redo the experiments and have some useful data to share, please
do share :-)

--
Josh