Subject: Re: [PATCH v7 04/10] ppc64 ftrace_with_regs configuration variables

From: Petr Mladek <[email-masked]>
Date: Fri, 5 Feb 2016 15:05:17 +0100

On Mon 2016-01-25 16:29:54, Torsten Duwe wrote:
> diff --git a/arch/powerpc/kernel/ftrace.c b/arch/powerpc/kernel/ftrace.c
> index ef8b916..29b7014 100644
> --- a/arch/powerpc/kernel/ftrace.c
> +++ b/arch/powerpc/kernel/ftrace.c
> @@ -28,6 +28,11 @@
>  
>  
>  #ifdef CONFIG_DYNAMIC_FTRACE
> +#if defined(CONFIG_DYNAMIC_FTRACE_WITH_REGS) && defined(CONFIG_PPC64) && \
> +  !defined(CC_USING_MPROFILE_KERNEL)
> +#error "DYNAMIC_FTRACE_WITH_REGS requires working -mprofile-kernel"
> +#endif

CONFIG_DYNAMIC_FTRACE_WITH_REGS is automatically enabled when
both CONFIG_DYNAMIC_FTRACE and HAVE_DYNAMIC_FTRACE_WITH_REGS
are enabled.

Therefore it is not possible to build kernel with broken gcc
and DYNAMIC_FTRACE.

IMHO, we need to allow to explicitely disable DYNAMIC_FTRACE_WITH_REGS
if the compiler is broken to get around this build error.

We either need to define DYNAMIC_FTRACE_WITH_REGS as a proper
bool with description, help text, ... Or we need a way to
explicitely disable HAVE_DYNAMIC_FTRACE_WITH_REGS. Or something
like this.

Best Regards,
Petr