Re: [PATCH] x86: select ARCH_WANT_FRAME_POINTERS again when UNWINDER_FRAME_POINTER=y
From: Masahiro Yamada
Date: Wed Mar 20 2024 - 11:31:15 EST
Ping?
On Sun, Feb 4, 2024 at 9:20 PM Masahiro Yamada <masahiroy@xxxxxxxxxx> wrote:
>
> It took me some time to understand the purpose of the tricky code at
> the end of arch/x86/Kconfig.debug.
>
> Without it, the following would be shown:
>
> WARNING: unmet direct dependencies detected for FRAME_POINTER
>
> because commit 81d387190039 ("x86/kconfig: Consolidate unwinders into
> multiple choice selection") removed 'select ARCH_WANT_FRAME_POINTERS'.
>
> The correct and more straightforward approach should have been to move
> it where 'select FRAME_POINTER' is located.
>
> Several architectures properly handle the conditional selection of
> ARCH_WANT_FRAME_POINTERS. For example, 'config UNWINDER_FRAME_POINTER'
> in arch/arm/Kconfig.debug.
>
> Signed-off-by: Masahiro Yamada <masahiroy@xxxxxxxxxx>
> ---
>
> arch/x86/Kconfig.debug | 5 +----
> 1 file changed, 1 insertion(+), 4 deletions(-)
>
> diff --git a/arch/x86/Kconfig.debug b/arch/x86/Kconfig.debug
> index c5d614d28a75..74777a97e394 100644
> --- a/arch/x86/Kconfig.debug
> +++ b/arch/x86/Kconfig.debug
> @@ -248,6 +248,7 @@ config UNWINDER_ORC
>
> config UNWINDER_FRAME_POINTER
> bool "Frame pointer unwinder"
> + select ARCH_WANT_FRAME_POINTERS
> select FRAME_POINTER
> help
> This option enables the frame pointer unwinder for unwinding kernel
> @@ -271,7 +272,3 @@ config UNWINDER_GUESS
> overhead.
>
> endchoice
> -
> -config FRAME_POINTER
> - depends on !UNWINDER_ORC && !UNWINDER_GUESS
> - bool
> --
> 2.40.1
>
--
Best Regards
Masahiro Yamada