Messages in this thread | | | From | Julian Braha <> | Subject | Re: [PATCH] lib: fix kconfig dependency on ARCH_WANT_FRAME_POINTERS | Date | Wed, 24 Mar 2021 02:48:26 -0400 |
| |
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
| |