linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] lib: fix kconfig dependency on ARCH_WANT_FRAME_POINTERS
@ 2021-03-20  0:15 Julian Braha
  2021-03-21 18:28 ` Geert Uytterhoeven
  0 siblings, 1 reply; 9+ messages in thread
From: Julian Braha @ 2021-03-20  0:15 UTC (permalink / raw)
  To: akpm; +Cc: linux-kernel

When LATENCYTOP is enabled and ARCH_WANT_FRAME_POINTERS
is disabled, Kbuild gives the following warning:

WARNING: unmet direct dependencies detected for FRAME_POINTER
  Depends on [n]: DEBUG_KERNEL [=y] && (M68K || UML || SUPERH) || ARCH_WANT_FRAME_POINTERS [=n] || MCOUNT [=n]
  Selected by [y]:
  - LATENCYTOP [=y] && DEBUG_KERNEL [=y] && STACKTRACE_SUPPORT [=y] && PROC_FS [=y] && !MIPS && !PPC && !S390 && !MICROBLAZE && !ARM && !ARC && !X86

This is because LATENCYTOP selects FRAME_POINTER,
without selecting or depending on ARCH_WANT_FRAME_POINTERS,
despite FRAME_POINTER depending on ARCH_WANT_FRAME_POINTERS.

Signed-off-by: Julian Braha <julianbraha@gmail.com>
---
 lib/Kconfig.debug | 1 +
 1 file changed, 1 insertion(+)

diff --git a/lib/Kconfig.debug b/lib/Kconfig.debug
index 5a698fc34d56..59e78f1b3821 100644
--- a/lib/Kconfig.debug
+++ b/lib/Kconfig.debug
@@ -1675,6 +1675,7 @@ config LATENCYTOP
 	depends on DEBUG_KERNEL
 	depends on STACKTRACE_SUPPORT
 	depends on PROC_FS
+	select ARCH_WANT_FRAME_POINTERS if !MIPS && !PPC && !S390 && !MICROBLAZE && !ARM && !ARC && !X86
 	select FRAME_POINTER if !MIPS && !PPC && !S390 && !MICROBLAZE && !ARM && !ARC && !X86
 	select KALLSYMS
 	select KALLSYMS_ALL
-- 
2.25.1


^ permalink raw reply related	[flat|nested] 9+ messages in thread

* Re: [PATCH] lib: fix kconfig dependency on ARCH_WANT_FRAME_POINTERS
  2021-03-20  0:15 [PATCH] lib: fix kconfig dependency on ARCH_WANT_FRAME_POINTERS Julian Braha
@ 2021-03-21 18:28 ` Geert Uytterhoeven
  2021-03-21 22:40   ` Julian Braha
  0 siblings, 1 reply; 9+ messages in thread
From: Geert Uytterhoeven @ 2021-03-21 18:28 UTC (permalink / raw)
  To: Julian Braha; +Cc: Andrew Morton, Linux Kernel Mailing List

Hi Julian,

On Sat, Mar 20, 2021 at 1:17 AM Julian Braha <julianbraha@gmail.com> wrote:
> When LATENCYTOP is enabled and ARCH_WANT_FRAME_POINTERS
> is disabled, Kbuild gives the following warning:
>
> WARNING: unmet direct dependencies detected for FRAME_POINTER
>   Depends on [n]: DEBUG_KERNEL [=y] && (M68K || UML || SUPERH) || ARCH_WANT_FRAME_POINTERS [=n] || MCOUNT [=n]
>   Selected by [y]:
>   - LATENCYTOP [=y] && DEBUG_KERNEL [=y] && STACKTRACE_SUPPORT [=y] && PROC_FS [=y] && !MIPS && !PPC && !S390 && !MICROBLAZE && !ARM && !ARC && !X86
>
> This is because LATENCYTOP selects FRAME_POINTER,
> without selecting or depending on ARCH_WANT_FRAME_POINTERS,
> despite FRAME_POINTER depending on ARCH_WANT_FRAME_POINTERS.
>
> Signed-off-by: Julian Braha <julianbraha@gmail.com>

Thanks for your patch!

> --- a/lib/Kconfig.debug
> +++ b/lib/Kconfig.debug
> @@ -1675,6 +1675,7 @@ config LATENCYTOP
>         depends on DEBUG_KERNEL
>         depends on STACKTRACE_SUPPORT
>         depends on PROC_FS
> +       select ARCH_WANT_FRAME_POINTERS if !MIPS && !PPC && !S390 && !MICROBLAZE && !ARM && !ARC && !X86

ARCH_WANT_FRAME_POINTERS is a symbol that is only to be selected by
architecture-specific configuration, and must not be overridden:

    # Select this config option from the architecture Kconfig, if it
    # is preferred to always offer frame pointers as a config
    # option on the architecture (regardless of KERNEL_DEBUG):

Probably this should be turned into a depends instead?

>         select FRAME_POINTER if !MIPS && !PPC && !S390 && !MICROBLAZE && !ARM && !ARC && !X86
>         select KALLSYMS
>         select KALLSYMS_ALL
> --
> 2.25.1
>


-- 
Gr{oetje,eeting}s,

                        Geert

-- 
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
                                -- Linus Torvalds

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH] lib: fix kconfig dependency on ARCH_WANT_FRAME_POINTERS
  2021-03-21 18:28 ` Geert Uytterhoeven
@ 2021-03-21 22:40   ` Julian Braha
  2021-03-22  7:43     ` Geert Uytterhoeven
  0 siblings, 1 reply; 9+ messages in thread
From: Julian Braha @ 2021-03-21 22:40 UTC (permalink / raw)
  To: Geert Uytterhoeven; +Cc: Andrew Morton, Linux Kernel Mailing List

On Sunday, March 21, 2021 2:28:43 PM EDT you wrote:
> Hi Julian,
> 
> On Sat, Mar 20, 2021 at 1:17 AM Julian Braha <julianbraha@gmail.com> wrote:
> > When LATENCYTOP is enabled and ARCH_WANT_FRAME_POINTERS
> > is disabled, Kbuild gives the following warning:
> >
> > WARNING: unmet direct dependencies detected for FRAME_POINTER
> >   Depends on [n]: DEBUG_KERNEL [=y] && (M68K || UML || SUPERH) || ARCH_WANT_FRAME_POINTERS [=n] || MCOUNT [=n]
> >   Selected by [y]:
> >   - LATENCYTOP [=y] && DEBUG_KERNEL [=y] && STACKTRACE_SUPPORT [=y] && PROC_FS [=y] && !MIPS && !PPC && !S390 && !MICROBLAZE && !ARM && !ARC && !X86
> >
> > This is because LATENCYTOP selects FRAME_POINTER,
> > without selecting or depending on ARCH_WANT_FRAME_POINTERS,
> > despite FRAME_POINTER depending on ARCH_WANT_FRAME_POINTERS.
> >
> > Signed-off-by: Julian Braha <julianbraha@gmail.com>
> 
> Thanks for your patch!
> 
> > --- a/lib/Kconfig.debug
> > +++ b/lib/Kconfig.debug
> > @@ -1675,6 +1675,7 @@ config LATENCYTOP
> >         depends on DEBUG_KERNEL
> >         depends on STACKTRACE_SUPPORT
> >         depends on PROC_FS
> > +       select ARCH_WANT_FRAME_POINTERS if !MIPS && !PPC && !S390 && !MICROBLAZE && !ARM && !ARC && !X86
> 
> ARCH_WANT_FRAME_POINTERS is a symbol that is only to be selected by
> architecture-specific configuration, and must not be overridden:
> 
>     # Select this config option from the architecture Kconfig, if it
>     # is preferred to always offer frame pointers as a config
>     # option on the architecture (regardless of KERNEL_DEBUG):
> 
> Probably this should be turned into a depends instead?
> 
> >         select FRAME_POINTER if !MIPS && !PPC && !S390 && !MICROBLAZE && !ARM && !ARC && !X86
> >         select KALLSYMS
> >         select KALLSYMS_ALL
> > --
> > 2.25.1
> >
> 
> 
> 

Hi Geert,

Making this a 'depends' causes a recursive dependency error. 
Any other ideas?

- Julian Braha




^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH] lib: fix kconfig dependency on ARCH_WANT_FRAME_POINTERS
  2021-03-21 22:40   ` Julian Braha
@ 2021-03-22  7:43     ` Geert Uytterhoeven
  2021-03-24  6:48       ` Julian Braha
  0 siblings, 1 reply; 9+ messages in thread
From: Geert Uytterhoeven @ 2021-03-22  7:43 UTC (permalink / raw)
  To: Julian Braha; +Cc: Andrew Morton, Linux Kernel Mailing List

Hi Julian,

On Sun, Mar 21, 2021 at 11:40 PM Julian Braha <julianbraha@gmail.com> wrote:
> On Sunday, March 21, 2021 2:28:43 PM EDT you wrote:
> > On Sat, Mar 20, 2021 at 1:17 AM Julian Braha <julianbraha@gmail.com> wrote:
> > > When LATENCYTOP is enabled and ARCH_WANT_FRAME_POINTERS
> > > is disabled, Kbuild gives the following warning:
> > >
> > > WARNING: unmet direct dependencies detected for FRAME_POINTER
> > >   Depends on [n]: DEBUG_KERNEL [=y] && (M68K || UML || SUPERH) || ARCH_WANT_FRAME_POINTERS [=n] || MCOUNT [=n]
> > >   Selected by [y]:
> > >   - LATENCYTOP [=y] && DEBUG_KERNEL [=y] && STACKTRACE_SUPPORT [=y] && PROC_FS [=y] && !MIPS && !PPC && !S390 && !MICROBLAZE && !ARM && !ARC && !X86
> > >
> > > This is because LATENCYTOP selects FRAME_POINTER,
> > > without selecting or depending on ARCH_WANT_FRAME_POINTERS,
> > > despite FRAME_POINTER depending on ARCH_WANT_FRAME_POINTERS.
> > >
> > > Signed-off-by: Julian Braha <julianbraha@gmail.com>
> >
> > Thanks for your patch!
> >
> > > --- a/lib/Kconfig.debug
> > > +++ b/lib/Kconfig.debug
> > > @@ -1675,6 +1675,7 @@ config LATENCYTOP
> > >         depends on DEBUG_KERNEL
> > >         depends on STACKTRACE_SUPPORT
> > >         depends on PROC_FS
> > > +       select ARCH_WANT_FRAME_POINTERS if !MIPS && !PPC && !S390 && !MICROBLAZE && !ARM && !ARC && !X86
> >
> > ARCH_WANT_FRAME_POINTERS is a symbol that is only to be selected by
> > architecture-specific configuration, and must not be overridden:
> >
> >     # Select this config option from the architecture Kconfig, if it
> >     # is preferred to always offer frame pointers as a config
> >     # option on the architecture (regardless of KERNEL_DEBUG):
> >
> > Probably this should be turned into a depends instead?
> >
> > >         select FRAME_POINTER if !MIPS && !PPC && !S390 && !MICROBLAZE && !ARM && !ARC && !X86
> > >         select KALLSYMS
> > >         select KALLSYMS_ALL

> Making this a 'depends' causes a recursive dependency error.
> Any other ideas?

What about

    -select FRAME_POINTER if !MIPS && !PPC && !S390 && !MICROBLAZE &&
!ARM && !ARC && !X86
    +depends on FRAME_POINTER if !MIPS && !PPC && !S390 && !MICROBLAZE
&& !ARM && !ARC && !X86

?

Gr{oetje,eeting}s,

                        Geert

-- 
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
                                -- Linus Torvalds

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH] lib: fix kconfig dependency on ARCH_WANT_FRAME_POINTERS
  2021-03-22  7:43     ` Geert Uytterhoeven
@ 2021-03-24  6:48       ` Julian Braha
  2021-03-24  8:12         ` Geert Uytterhoeven
  0 siblings, 1 reply; 9+ messages in thread
From: Julian Braha @ 2021-03-24  6:48 UTC (permalink / raw)
  To: Geert Uytterhoeven; +Cc: linux-kernel

On Monday, March 22, 2021 3:43:41 AM EDT you wrote:
> Hi Julian,
> 
> On Sun, Mar 21, 2021 at 11:40 PM Julian Braha <julianbraha@gmail.com> wrote:
> > On Sunday, March 21, 2021 2:28:43 PM EDT you wrote:
> > > On Sat, Mar 20, 2021 at 1:17 AM Julian Braha <julianbraha@gmail.com> wrote:
> > > > When LATENCYTOP is enabled and ARCH_WANT_FRAME_POINTERS
> > > > is disabled, Kbuild gives the following warning:
> > > >
> > > > WARNING: unmet direct dependencies detected for FRAME_POINTER
> > > >   Depends on [n]: DEBUG_KERNEL [=y] && (M68K || UML || SUPERH) || ARCH_WANT_FRAME_POINTERS [=n] || MCOUNT [=n]
> > > >   Selected by [y]:
> > > >   - LATENCYTOP [=y] && DEBUG_KERNEL [=y] && STACKTRACE_SUPPORT [=y] && PROC_FS [=y] && !MIPS && !PPC && !S390 && !MICROBLAZE && !ARM && !ARC && !X86
> > > >
> > > > This is because LATENCYTOP selects FRAME_POINTER,
> > > > without selecting or depending on ARCH_WANT_FRAME_POINTERS,
> > > > despite FRAME_POINTER depending on ARCH_WANT_FRAME_POINTERS.
> > > >
> > > > Signed-off-by: Julian Braha <julianbraha@gmail.com>
> > >
> > > Thanks for your patch!
> > >
> > > > --- a/lib/Kconfig.debug
> > > > +++ b/lib/Kconfig.debug
> > > > @@ -1675,6 +1675,7 @@ config LATENCYTOP
> > > >         depends on DEBUG_KERNEL
> > > >         depends on STACKTRACE_SUPPORT
> > > >         depends on PROC_FS
> > > > +       select ARCH_WANT_FRAME_POINTERS if !MIPS && !PPC && !S390 && !MICROBLAZE && !ARM && !ARC && !X86
> > >
> > > ARCH_WANT_FRAME_POINTERS is a symbol that is only to be selected by
> > > architecture-specific configuration, and must not be overridden:
> > >
> > >     # Select this config option from the architecture Kconfig, if it
> > >     # is preferred to always offer frame pointers as a config
> > >     # option on the architecture (regardless of KERNEL_DEBUG):
> > >
> > > Probably this should be turned into a depends instead?
> > >
> > > >         select FRAME_POINTER if !MIPS && !PPC && !S390 && !MICROBLAZE && !ARM && !ARC && !X86
> > > >         select KALLSYMS
> > > >         select KALLSYMS_ALL
> 
> > Making this a 'depends' causes a recursive dependency error.
> > Any other ideas?
> 
> What about
> 
>     -select FRAME_POINTER if !MIPS && !PPC && !S390 && !MICROBLAZE &&
> !ARM && !ARC && !X86
>     +depends on FRAME_POINTER if !MIPS && !PPC && !S390 && !MICROBLAZE
> && !ARM && !ARC && !X86
> 
> ?
> 
> Gr{oetje,eeting}s,
> 
>                         Geert
> 
> 

Hi Geert,

Sadly, this won't work either. In Kconfig, 'depends' cannot have an 'if' after it (only 'select' can.)
Kbuild gives an error for this.

- Julian Braha




^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH] lib: fix kconfig dependency on ARCH_WANT_FRAME_POINTERS
  2021-03-24  6:48       ` Julian Braha
@ 2021-03-24  8:12         ` Geert Uytterhoeven
  2021-03-25  0:09           ` Julian Braha
  0 siblings, 1 reply; 9+ messages in thread
From: Geert Uytterhoeven @ 2021-03-24  8:12 UTC (permalink / raw)
  To: Julian Braha; +Cc: Linux Kernel Mailing List

Hi Julian,

On Wed, Mar 24, 2021 at 7:48 AM Julian Braha <julianbraha@gmail.com> wrote:
> On Monday, March 22, 2021 3:43:41 AM EDT you wrote:
> > On Sun, Mar 21, 2021 at 11:40 PM Julian Braha <julianbraha@gmail.com> wrote:
> > > On Sunday, March 21, 2021 2:28:43 PM EDT you wrote:
> > > > On Sat, Mar 20, 2021 at 1:17 AM Julian Braha <julianbraha@gmail.com> wrote:
> > > > > When LATENCYTOP is enabled and ARCH_WANT_FRAME_POINTERS
> > > > > is disabled, Kbuild gives the following warning:
> > > > >
> > > > > WARNING: unmet direct dependencies detected for FRAME_POINTER
> > > > >   Depends on [n]: DEBUG_KERNEL [=y] && (M68K || UML || SUPERH) || ARCH_WANT_FRAME_POINTERS [=n] || MCOUNT [=n]
> > > > >   Selected by [y]:
> > > > >   - LATENCYTOP [=y] && DEBUG_KERNEL [=y] && STACKTRACE_SUPPORT [=y] && PROC_FS [=y] && !MIPS && !PPC && !S390 && !MICROBLAZE && !ARM && !ARC && !X86
> > > > >
> > > > > This is because LATENCYTOP selects FRAME_POINTER,
> > > > > without selecting or depending on ARCH_WANT_FRAME_POINTERS,
> > > > > despite FRAME_POINTER depending on ARCH_WANT_FRAME_POINTERS.
> > > > >
> > > > > Signed-off-by: Julian Braha <julianbraha@gmail.com>
> > > >
> > > > Thanks for your patch!
> > > >
> > > > > --- a/lib/Kconfig.debug
> > > > > +++ b/lib/Kconfig.debug
> > > > > @@ -1675,6 +1675,7 @@ config LATENCYTOP
> > > > >         depends on DEBUG_KERNEL
> > > > >         depends on STACKTRACE_SUPPORT
> > > > >         depends on PROC_FS
> > > > > +       select ARCH_WANT_FRAME_POINTERS if !MIPS && !PPC && !S390 && !MICROBLAZE && !ARM && !ARC && !X86
> > > >
> > > > ARCH_WANT_FRAME_POINTERS is a symbol that is only to be selected by
> > > > architecture-specific configuration, and must not be overridden:
> > > >
> > > >     # Select this config option from the architecture Kconfig, if it
> > > >     # is preferred to always offer frame pointers as a config
> > > >     # option on the architecture (regardless of KERNEL_DEBUG):
> > > >
> > > > Probably this should be turned into a depends instead?
> > > >
> > > > >         select FRAME_POINTER if !MIPS && !PPC && !S390 && !MICROBLAZE && !ARM && !ARC && !X86
> > > > >         select KALLSYMS
> > > > >         select KALLSYMS_ALL
> >
> > > Making this a 'depends' causes a recursive dependency error.
> > > Any other ideas?
> >
> > What about
> >
> >     -select FRAME_POINTER if !MIPS && !PPC && !S390 && !MICROBLAZE &&
> > !ARM && !ARC && !X86
> >     +depends on FRAME_POINTER if !MIPS && !PPC && !S390 && !MICROBLAZE
> > && !ARM && !ARC && !X86
> >
> > ?
>
> Sadly, this won't work either. In Kconfig, 'depends' cannot have an 'if' after it (only 'select' can.)
> Kbuild gives an error for this.

Oops

    select FRAME_POINTER || MIPS || PPC || S390 || MICROBLAZE || ARM
|| ARC || X86

of course.

Gr{oetje,eeting}s,

                        Geert

-- 
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
                                -- Linus Torvalds

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH] lib: fix kconfig dependency on ARCH_WANT_FRAME_POINTERS
  2021-03-24  8:12         ` Geert Uytterhoeven
@ 2021-03-25  0:09           ` Julian Braha
  2021-03-25  7:20             ` Geert Uytterhoeven
  0 siblings, 1 reply; 9+ messages in thread
From: Julian Braha @ 2021-03-25  0:09 UTC (permalink / raw)
  To: Geert Uytterhoeven; +Cc: linux-kernel

On Wednesday, March 24, 2021 4:12:34 AM EDT you wrote:
> Hi Julian,
> 
> On Wed, Mar 24, 2021 at 7:48 AM Julian Braha <julianbraha@gmail.com> wrote:
> > On Monday, March 22, 2021 3:43:41 AM EDT you wrote:
> > > On Sun, Mar 21, 2021 at 11:40 PM Julian Braha <julianbraha@gmail.com> wrote:
> > > > On Sunday, March 21, 2021 2:28:43 PM EDT you wrote:
> > > > > On Sat, Mar 20, 2021 at 1:17 AM Julian Braha <julianbraha@gmail.com> wrote:
> > > > > > When LATENCYTOP is enabled and ARCH_WANT_FRAME_POINTERS
> > > > > > is disabled, Kbuild gives the following warning:
> > > > > >
> > > > > > WARNING: unmet direct dependencies detected for FRAME_POINTER
> > > > > >   Depends on [n]: DEBUG_KERNEL [=y] && (M68K || UML || SUPERH) || ARCH_WANT_FRAME_POINTERS [=n] || MCOUNT [=n]
> > > > > >   Selected by [y]:
> > > > > >   - LATENCYTOP [=y] && DEBUG_KERNEL [=y] && STACKTRACE_SUPPORT [=y] && PROC_FS [=y] && !MIPS && !PPC && !S390 && !MICROBLAZE && !ARM && !ARC && !X86
> > > > > >
> > > > > > This is because LATENCYTOP selects FRAME_POINTER,
> > > > > > without selecting or depending on ARCH_WANT_FRAME_POINTERS,
> > > > > > despite FRAME_POINTER depending on ARCH_WANT_FRAME_POINTERS.
> > > > > >
> > > > > > Signed-off-by: Julian Braha <julianbraha@gmail.com>
> > > > >
> > > > > Thanks for your patch!
> > > > >
> > > > > > --- a/lib/Kconfig.debug
> > > > > > +++ b/lib/Kconfig.debug
> > > > > > @@ -1675,6 +1675,7 @@ config LATENCYTOP
> > > > > >         depends on DEBUG_KERNEL
> > > > > >         depends on STACKTRACE_SUPPORT
> > > > > >         depends on PROC_FS
> > > > > > +       select ARCH_WANT_FRAME_POINTERS if !MIPS && !PPC && !S390 && !MICROBLAZE && !ARM && !ARC && !X86
> > > > >
> > > > > ARCH_WANT_FRAME_POINTERS is a symbol that is only to be selected by
> > > > > architecture-specific configuration, and must not be overridden:
> > > > >
> > > > >     # Select this config option from the architecture Kconfig, if it
> > > > >     # is preferred to always offer frame pointers as a config
> > > > >     # option on the architecture (regardless of KERNEL_DEBUG):
> > > > >
> > > > > Probably this should be turned into a depends instead?
> > > > >
> > > > > >         select FRAME_POINTER if !MIPS && !PPC && !S390 && !MICROBLAZE && !ARM && !ARC && !X86
> > > > > >         select KALLSYMS
> > > > > >         select KALLSYMS_ALL
> > >
> > > > Making this a 'depends' causes a recursive dependency error.
> > > > Any other ideas?
> > >
> > > What about
> > >
> > >     -select FRAME_POINTER if !MIPS && !PPC && !S390 && !MICROBLAZE &&
> > > !ARM && !ARC && !X86
> > >     +depends on FRAME_POINTER if !MIPS && !PPC && !S390 && !MICROBLAZE
> > > && !ARM && !ARC && !X86
> > >
> > > ?
> >
> > Sadly, this won't work either. In Kconfig, 'depends' cannot have an 'if' after it (only 'select' can.)
> > Kbuild gives an error for this.
> 
> Oops
> 
>     select FRAME_POINTER || MIPS || PPC || S390 || MICROBLAZE || ARM
> || ARC || X86
> 
> of course.
> 
> Gr{oetje,eeting}s,
> 
>                         Geert
> 
> 

Hi Geert,

I think it's a typo, but if you meant:
select FRAME_POINTER if MIPS || PPC || S390 || MICROBLAZE || ARM || ARC || X86
Then that works.

- Julian Braha




^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH] lib: fix kconfig dependency on ARCH_WANT_FRAME_POINTERS
  2021-03-25  0:09           ` Julian Braha
@ 2021-03-25  7:20             ` Geert Uytterhoeven
  2021-03-26 17:32               ` Julian Braha
  0 siblings, 1 reply; 9+ messages in thread
From: Geert Uytterhoeven @ 2021-03-25  7:20 UTC (permalink / raw)
  To: Julian Braha; +Cc: Linux Kernel Mailing List

Hi Julian,

On Thu, Mar 25, 2021 at 1:09 AM Julian Braha <julianbraha@gmail.com> wrote:
> On Wednesday, March 24, 2021 4:12:34 AM EDT you wrote:

> > On Wed, Mar 24, 2021 at 7:48 AM Julian Braha <julianbraha@gmail.com> wrote:
> > > On Monday, March 22, 2021 3:43:41 AM EDT you wrote:
> > > > On Sun, Mar 21, 2021 at 11:40 PM Julian Braha <julianbraha@gmail.com> wrote:
> > > > > On Sunday, March 21, 2021 2:28:43 PM EDT you wrote:
> > > > > > On Sat, Mar 20, 2021 at 1:17 AM Julian Braha <julianbraha@gmail.com> wrote:
> > > > > > > When LATENCYTOP is enabled and ARCH_WANT_FRAME_POINTERS
> > > > > > > is disabled, Kbuild gives the following warning:
> > > > > > >
> > > > > > > WARNING: unmet direct dependencies detected for FRAME_POINTER
> > > > > > >   Depends on [n]: DEBUG_KERNEL [=y] && (M68K || UML || SUPERH) || ARCH_WANT_FRAME_POINTERS [=n] || MCOUNT [=n]
> > > > > > >   Selected by [y]:
> > > > > > >   - LATENCYTOP [=y] && DEBUG_KERNEL [=y] && STACKTRACE_SUPPORT [=y] && PROC_FS [=y] && !MIPS && !PPC && !S390 && !MICROBLAZE && !ARM && !ARC && !X86
> > > > > > >
> > > > > > > This is because LATENCYTOP selects FRAME_POINTER,
> > > > > > > without selecting or depending on ARCH_WANT_FRAME_POINTERS,
> > > > > > > despite FRAME_POINTER depending on ARCH_WANT_FRAME_POINTERS.
> > > > > > >
> > > > > > > Signed-off-by: Julian Braha <julianbraha@gmail.com>
> > > > > >
> > > > > > Thanks for your patch!
> > > > > >
> > > > > > > --- a/lib/Kconfig.debug
> > > > > > > +++ b/lib/Kconfig.debug
> > > > > > > @@ -1675,6 +1675,7 @@ config LATENCYTOP
> > > > > > >         depends on DEBUG_KERNEL
> > > > > > >         depends on STACKTRACE_SUPPORT
> > > > > > >         depends on PROC_FS
> > > > > > > +       select ARCH_WANT_FRAME_POINTERS if !MIPS && !PPC && !S390 && !MICROBLAZE && !ARM && !ARC && !X86
> > > > > >
> > > > > > ARCH_WANT_FRAME_POINTERS is a symbol that is only to be selected by
> > > > > > architecture-specific configuration, and must not be overridden:
> > > > > >
> > > > > >     # Select this config option from the architecture Kconfig, if it
> > > > > >     # is preferred to always offer frame pointers as a config
> > > > > >     # option on the architecture (regardless of KERNEL_DEBUG):
> > > > > >
> > > > > > Probably this should be turned into a depends instead?
> > > > > >
> > > > > > >         select FRAME_POINTER if !MIPS && !PPC && !S390 && !MICROBLAZE && !ARM && !ARC && !X86
> > > > > > >         select KALLSYMS
> > > > > > >         select KALLSYMS_ALL
> > > >
> > > > > Making this a 'depends' causes a recursive dependency error.
> > > > > Any other ideas?
> > > >
> > > > What about
> > > >
> > > >     -select FRAME_POINTER if !MIPS && !PPC && !S390 && !MICROBLAZE &&
> > > > !ARM && !ARC && !X86
> > > >     +depends on FRAME_POINTER if !MIPS && !PPC && !S390 && !MICROBLAZE
> > > > && !ARM && !ARC && !X86
> > > >
> > > > ?
> > >
> > > Sadly, this won't work either. In Kconfig, 'depends' cannot have an 'if' after it (only 'select' can.)
> > > Kbuild gives an error for this.
> >
> > Oops
> >
> >     select FRAME_POINTER || MIPS || PPC || S390 || MICROBLAZE || ARM
> > || ARC || X86
> >
> > of course.

> I think it's a typo, but if you meant:
> select FRAME_POINTER if MIPS || PPC || S390 || MICROBLAZE || ARM || ARC || X86
> Then that works.

(Bummer, I shouldn't reply to emails before my morning coffee)
Yes, it is a typo.  I meant:

    depends on FRAME_POINTER || MIPS || PPC || S390 || MICROBLAZE ||
ARM || ARC || X86

Gr{oetje,eeting}s,

                        Geert

-- 
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
                                -- Linus Torvalds

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH] lib: fix kconfig dependency on ARCH_WANT_FRAME_POINTERS
  2021-03-25  7:20             ` Geert Uytterhoeven
@ 2021-03-26 17:32               ` Julian Braha
  0 siblings, 0 replies; 9+ messages in thread
From: Julian Braha @ 2021-03-26 17:32 UTC (permalink / raw)
  To: Geert Uytterhoeven; +Cc: Linux Kernel Mailing List

On Thursday, March 25, 2021 3:20:59 AM EDT you wrote:
> Hi Julian,
> 
> On Thu, Mar 25, 2021 at 1:09 AM Julian Braha <julianbraha@gmail.com> wrote:
> > On Wednesday, March 24, 2021 4:12:34 AM EDT you wrote:
> 
> > > On Wed, Mar 24, 2021 at 7:48 AM Julian Braha <julianbraha@gmail.com> wrote:
> > > > On Monday, March 22, 2021 3:43:41 AM EDT you wrote:
> > > > > On Sun, Mar 21, 2021 at 11:40 PM Julian Braha <julianbraha@gmail.com> wrote:
> > > > > > On Sunday, March 21, 2021 2:28:43 PM EDT you wrote:
> > > > > > > On Sat, Mar 20, 2021 at 1:17 AM Julian Braha <julianbraha@gmail.com> wrote:
> > > > > > > > When LATENCYTOP is enabled and ARCH_WANT_FRAME_POINTERS
> > > > > > > > is disabled, Kbuild gives the following warning:
> > > > > > > >
> > > > > > > > WARNING: unmet direct dependencies detected for FRAME_POINTER
> > > > > > > >   Depends on [n]: DEBUG_KERNEL [=y] && (M68K || UML || SUPERH) || ARCH_WANT_FRAME_POINTERS [=n] || MCOUNT [=n]
> > > > > > > >   Selected by [y]:
> > > > > > > >   - LATENCYTOP [=y] && DEBUG_KERNEL [=y] && STACKTRACE_SUPPORT [=y] && PROC_FS [=y] && !MIPS && !PPC && !S390 && !MICROBLAZE && !ARM && !ARC && !X86
> > > > > > > >
> > > > > > > > This is because LATENCYTOP selects FRAME_POINTER,
> > > > > > > > without selecting or depending on ARCH_WANT_FRAME_POINTERS,
> > > > > > > > despite FRAME_POINTER depending on ARCH_WANT_FRAME_POINTERS.
> > > > > > > >
> > > > > > > > Signed-off-by: Julian Braha <julianbraha@gmail.com>
> > > > > > >
> > > > > > > Thanks for your patch!
> > > > > > >
> > > > > > > > --- a/lib/Kconfig.debug
> > > > > > > > +++ b/lib/Kconfig.debug
> > > > > > > > @@ -1675,6 +1675,7 @@ config LATENCYTOP
> > > > > > > >         depends on DEBUG_KERNEL
> > > > > > > >         depends on STACKTRACE_SUPPORT
> > > > > > > >         depends on PROC_FS
> > > > > > > > +       select ARCH_WANT_FRAME_POINTERS if !MIPS && !PPC && !S390 && !MICROBLAZE && !ARM && !ARC && !X86
> > > > > > >
> > > > > > > ARCH_WANT_FRAME_POINTERS is a symbol that is only to be selected by
> > > > > > > architecture-specific configuration, and must not be overridden:
> > > > > > >
> > > > > > >     # Select this config option from the architecture Kconfig, if it
> > > > > > >     # is preferred to always offer frame pointers as a config
> > > > > > >     # option on the architecture (regardless of KERNEL_DEBUG):
> > > > > > >
> > > > > > > Probably this should be turned into a depends instead?
> > > > > > >
> > > > > > > >         select FRAME_POINTER if !MIPS && !PPC && !S390 && !MICROBLAZE && !ARM && !ARC && !X86
> > > > > > > >         select KALLSYMS
> > > > > > > >         select KALLSYMS_ALL
> > > > >
> > > > > > Making this a 'depends' causes a recursive dependency error.
> > > > > > Any other ideas?
> > > > >
> > > > > What about
> > > > >
> > > > >     -select FRAME_POINTER if !MIPS && !PPC && !S390 && !MICROBLAZE &&
> > > > > !ARM && !ARC && !X86
> > > > >     +depends on FRAME_POINTER if !MIPS && !PPC && !S390 && !MICROBLAZE
> > > > > && !ARM && !ARC && !X86
> > > > >
> > > > > ?
> > > >
> > > > Sadly, this won't work either. In Kconfig, 'depends' cannot have an 'if' after it (only 'select' can.)
> > > > Kbuild gives an error for this.
> > >
> > > Oops
> > >
> > >     select FRAME_POINTER || MIPS || PPC || S390 || MICROBLAZE || ARM
> > > || ARC || X86
> > >
> > > of course.
> 
> > I think it's a typo, but if you meant:
> > select FRAME_POINTER if MIPS || PPC || S390 || MICROBLAZE || ARM || ARC || X86
> > Then that works.
> 
> (Bummer, I shouldn't reply to emails before my morning coffee)
> Yes, it is a typo.  I meant:
> 
>     depends on FRAME_POINTER || MIPS || PPC || S390 || MICROBLAZE ||
> ARM || ARC || X86
> 
> Gr{oetje,eeting}s,
> 
>                         Geert
> 
> 

Hi Geert,

I can relate on the coffee :)

Yes:
>     depends on FRAME_POINTER || MIPS || PPC || S390 || MICROBLAZE ||
> ARM || ARC || X86
this is an acceptable solution. 

- Julian Braha






^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2021-03-26 17:33 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-03-20  0:15 [PATCH] lib: fix kconfig dependency on ARCH_WANT_FRAME_POINTERS Julian Braha
2021-03-21 18:28 ` Geert Uytterhoeven
2021-03-21 22:40   ` Julian Braha
2021-03-22  7:43     ` Geert Uytterhoeven
2021-03-24  6:48       ` Julian Braha
2021-03-24  8:12         ` Geert Uytterhoeven
2021-03-25  0:09           ` Julian Braha
2021-03-25  7:20             ` Geert Uytterhoeven
2021-03-26 17:32               ` Julian Braha

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).