[PATCH v9 01/16] tracing: move function tracer options to Kconfig (causing parisc build failures)

Guenter Roeck linux at roeck-us.net
Wed Feb 24 17:29:31 EST 2021


On Wed, Feb 24, 2021 at 12:54:15PM -0800, Sami Tolvanen wrote:
> On Wed, Feb 24, 2021 at 12:38 PM Kees Cook <keescook at chromium.org> wrote:
> >
> > On Wed, Feb 24, 2021 at 12:17:23PM -0800, Guenter Roeck wrote:
> > > On Fri, Dec 11, 2020 at 10:46:18AM -0800, Sami Tolvanen wrote:
> > > > Move function tracer options to Kconfig to make it easier to add
> > > > new methods for generating __mcount_loc, and to make the options
> > > > available also when building kernel modules.
> > > >
> > > > Note that FTRACE_MCOUNT_USE_* options are updated on rebuild and
> > > > therefore, work even if the .config was generated in a different
> > > > environment.
> > > >
> > > > Signed-off-by: Sami Tolvanen <samitolvanen at google.com>
> > > > Acked-by: Steven Rostedt (VMware) <rostedt at goodmis.org>
> > >
> > > With this patch in place, parisc:allmodconfig no longer builds.
> > >
> > > Error log:
> > > Arch parisc is not supported with CONFIG_FTRACE_MCOUNT_RECORD at scripts/recordmcount.pl line 405.
> > > make[2]: *** [scripts/mod/empty.o] Error 2
> > >
> > > Due to this problem, CONFIG_FTRACE_MCOUNT_RECORD can no longer be
> > > enabled in parisc builds. Since that is auto-selected by DYNAMIC_FTRACE,
> > > DYNAMIC_FTRACE can no longer be enabled, and with it everything that
> > > depends on it.
> >
> > Ew. Any idea why this didn't show up while it was in linux-next?
> 
> Does anyone build parisc allmodconfig from -next?
> 

https://kerneltests.org/builders/next-parisc-next

Guenter

> parisc seems to always use -fpatchable-function-entry with dynamic
> ftrace, so we just need to select
> FTRACE_MCOUNT_USE_PATCHABLE_FUNCTION_ENTRY to stop it from defaulting
> to recordmcount:
> 
> diff --git a/arch/parisc/Kconfig b/arch/parisc/Kconfig
> index ecef9aff9d72..9ee806f68123 100644
> --- a/arch/parisc/Kconfig
> +++ b/arch/parisc/Kconfig
> @@ -60,6 +60,7 @@ config PARISC
>         select HAVE_KPROBES
>         select HAVE_KRETPROBES
>         select HAVE_DYNAMIC_FTRACE if
> $(cc-option,-fpatchable-function-entry=1,1)
> +       select FTRACE_MCOUNT_USE_PATCHABLE_FUNCTION_ENTRY if HAVE_DYNAMIC_FTRACE
>         select HAVE_FTRACE_MCOUNT_RECORD if HAVE_DYNAMIC_FTRACE
>         select HAVE_KPROBES_ON_FTRACE
>         select HAVE_DYNAMIC_FTRACE_WITH_REGS
> 
> I'll send a proper patch shortly.
> 
> Sami



More information about the linux-arm-kernel mailing list