[PATCH] arm64: ftrace: fix build error with CONFIG_FUNCTION_GRAPH_TRACER=n

Florent Revest revest at chromium.org
Fri Jun 23 08:35:55 PDT 2023


On Fri, Jun 23, 2023 at 5:22 PM Arnd Bergmann <arnd at kernel.org> wrote:
>
> From: Arnd Bergmann <arnd at arndb.de>
>
> It appears that a merge conflict ended up hiding a newly added constant
> in some configurations:
>
> arch/arm64/kernel/entry-ftrace.S: Assembler messages:
> arch/arm64/kernel/entry-ftrace.S:59: Error: undefined symbol FTRACE_OPS_DIRECT_CALL used as an immediate value
>
> FTRACE_OPS_DIRECT_CALL is still used when CONFIG_DYNAMIC_FTRACE_WITH_DIRECT_CALLS
> is enabled, even if CONFIG_FUNCTION_GRAPH_TRACER is disabled, so change the
> ifdef accordingly.
>
> Fixes: 3646970322464 ("arm64: ftrace: Enable HAVE_FUNCTION_GRAPH_RETVAL")
> Signed-off-by: Arnd Bergmann <arnd at arndb.de>
> ---
>  arch/arm64/kernel/asm-offsets.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/arch/arm64/kernel/asm-offsets.c b/arch/arm64/kernel/asm-offsets.c
> index 757d01a68ffd0..5ff1942b04fcf 100644
> --- a/arch/arm64/kernel/asm-offsets.c
> +++ b/arch/arm64/kernel/asm-offsets.c
> @@ -213,9 +213,9 @@ int main(void)
>    DEFINE(FGRET_REGS_X7,                        offsetof(struct fgraph_ret_regs, regs[7]));
>    DEFINE(FGRET_REGS_FP,                        offsetof(struct fgraph_ret_regs, fp));
>    DEFINE(FGRET_REGS_SIZE,              sizeof(struct fgraph_ret_regs));
> +#endif
>  #ifdef CONFIG_DYNAMIC_FTRACE_WITH_DIRECT_CALLS
>    DEFINE(FTRACE_OPS_DIRECT_CALL,       offsetof(struct ftrace_ops, direct_call));
> -#endif
>  #endif
>    return 0;
>  }
> --
> 2.39.2
>

Acked-by: Florent Revest <revest at chromium.org>

Good catch, thank you Arnd!



More information about the linux-arm-kernel mailing list