Re: [PATCH] x86/stacktrace: update kconfig help text for reliable unwinders

From: Josh Poimboeuf
Date: Wed Nov 06 2019 - 18:06:11 EST


On Wed, Nov 06, 2019 at 05:43:44PM -0500, Joe Lawrence wrote:
> commit 6415b38bae26 ("x86/stacktrace: Enable HAVE_RELIABLE_STACKTRACE
> for the ORC unwinder") marked the ORC unwinder as a "reliable" unwinder.
> Update the help text to reflect that change: the frame pointer unwinder
> is no longer the only one that provides HAVE_RELIABLE_STACKTRACE.
>
> Signed-off-by: Joe Lawrence <joe.lawrence@xxxxxxxxxx>
> ---
> arch/x86/Kconfig.debug | 8 ++++----
> 1 file changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/arch/x86/Kconfig.debug b/arch/x86/Kconfig.debug
> index bf9cd83de777..69cdf0558c13 100644
> --- a/arch/x86/Kconfig.debug
> +++ b/arch/x86/Kconfig.debug
> @@ -316,10 +316,6 @@ config UNWINDER_FRAME_POINTER
> unwinder, but the kernel text size will grow by ~3% and the kernel's
> overall performance will degrade by roughly 5-10%.
>
> - This option is recommended if you want to use the livepatch
> - consistency model, as this is currently the only way to get a
> - reliable stack trace (CONFIG_HAVE_RELIABLE_STACKTRACE).
> -
> config UNWINDER_GUESS
> bool "Guess unwinder"
> depends on EXPERT
> @@ -333,6 +329,10 @@ config UNWINDER_GUESS
> useful in many cases. Unlike the other unwinders, it has no runtime
> overhead.
>
> + This option is not recommended if you want to use the livepatch
> + consistency model, as this unwinder cannot guarantee reliable stack
> + traces.
> +

I'm not sure whether this last hunk is helpful. At the very least the
wording of "not recommended" might be confusing because it's not even
possible to combine UNWINDER_GUESS+HAVE_RELIABLE_STACKTRACE.

arch/x86/Kconfig: select HAVE_RELIABLE_STACKTRACE if X86_64 && (UNWINDER_FRAME_POINTER || UNWINDER_ORC) && STACK_VALIDATION

--
Josh