[PATCH 01/17] powerpc/ftrace: Fix dropping weak symbols with older toolchains
Christophe Leroy
christophe.leroy at csgroup.eu
Fri Jun 23 15:10:54 AEST 2023
Le 19/06/2023 à 11:47, Naveen N Rao a écrit :
> The minimum level of gcc supported for building the kernel is v5.1.
> v5.x releases of gcc emitted a three instruction sequence for
> -mprofile-kernel:
> mflr r0
> std r0, 16(r1)
> bl _mcount
>
> It is only with the v6.x releases that gcc started emitting the two
> instruction sequence for -mprofile-kernel, omitting the second store
> instruction.
>
> With the older three instruction sequence, the actual ftrace location
> can be the 5th instruction into a function. Update the allowed offset
> for ftrace location from 12 to 16 to accommodate the same.
>
> Cc: stable at vger.kernel.org
> Fixes: 7af82ff90a2b06 ("powerpc/ftrace: Ignore weak functions")
> Signed-off-by: Naveen N Rao <naveen at kernel.org>
Reviewed-by: Christophe Leroy <christophe.leroy at csgroup.eu>
> ---
> arch/powerpc/include/asm/ftrace.h | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/arch/powerpc/include/asm/ftrace.h b/arch/powerpc/include/asm/ftrace.h
> index 91c049d51d0e10..2edc6269b1a357 100644
> --- a/arch/powerpc/include/asm/ftrace.h
> +++ b/arch/powerpc/include/asm/ftrace.h
> @@ -12,7 +12,7 @@
>
> /* Ignore unused weak functions which will have larger offsets */
> #ifdef CONFIG_MPROFILE_KERNEL
> -#define FTRACE_MCOUNT_MAX_OFFSET 12
> +#define FTRACE_MCOUNT_MAX_OFFSET 16
> #elif defined(CONFIG_PPC32)
> #define FTRACE_MCOUNT_MAX_OFFSET 8
> #endif
More information about the Linuxppc-dev
mailing list