Re: [PATCH] x86: select ARCH_WANT_FRAME_POINTERS again when UNWINDER_FRAME_POINTER=y

From: Masahiro Yamada
Date: Fri May 17 2024 - 03:18:51 EST


Hi, x86 maintainers


Please check this.


And, please also note the current code is incorrect,
and it may get broken with future Kconfig refactoring.





On Thu, Mar 21, 2024 at 12:30 AM Masahiro Yamada <masahiroy@xxxxxxxxxx> wrote:
>
> 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



--
Best Regards
Masahiro Yamada