[PATCH v2 2/2] powerpc/fprobe: fix updated fprobe for function-graph tracer

Venkat venkat88 at linux.ibm.com
Mon Aug 4 17:12:52 AEST 2025



> On 22 Jul 2025, at 2:26 PM, Aditya Bodkhe <adityab1 at linux.ibm.com> wrote:
> 
> From: Hari Bathini <hbathini at linux.ibm.com>
> 
> Since commit 4346ba160409 ("fprobe: Rewrite fprobe on function-graph
> tracer"), FPROBE depends on HAVE_FUNCTION_GRAPH_FREGS. With previous
> patch adding HAVE_FUNCTION_GRAPH_FREGS for powerpc, FPROBE can be
> enabled on powerpc. But with the commit b5fa903b7f7c ("fprobe: Add
> fprobe_header encoding feature"), asm/fprobe.h header is needed to
> define arch dependent encode/decode macros. The fprobe header MSB
> pattern on powerpc is not 0xf. So, define FPROBE_HEADER_MSB_PATTERN
> expected on powerpc.
> 
> Also, commit 762abbc0d09f ("fprobe: Use ftrace_regs in fprobe exit
> handler") introduced HAVE_FTRACE_REGS_HAVING_PT_REGS for archs that
> have pt_regs in ftrace_regs. Advertise that on powerpc to reuse
> common definitions like ftrace_partial_regs().
> 
> Signed-off-by: Hari Bathini <hbathini at linux.ibm.com>
> Signed-off-by: Aditya Bodkhe <adityab1 at linux.ibm.com>
> ---
> arch/powerpc/Kconfig              |  1 +
> arch/powerpc/include/asm/fprobe.h | 12 ++++++++++++
> 2 files changed, 13 insertions(+)
> create mode 100644 arch/powerpc/include/asm/fprobe.h
> 
> diff --git a/arch/powerpc/Kconfig b/arch/powerpc/Kconfig
> index 9163521bc4b9..2203e4fb64c1 100644
> --- a/arch/powerpc/Kconfig
> +++ b/arch/powerpc/Kconfig
> @@ -246,6 +246,7 @@ config PPC
> select HAVE_EFFICIENT_UNALIGNED_ACCESS
> select HAVE_GUP_FAST
> select HAVE_FTRACE_GRAPH_FUNC
> + select HAVE_FTRACE_REGS_HAVING_PT_REGS
> select HAVE_FTRACE_MCOUNT_RECORD
> select HAVE_FUNCTION_ARG_ACCESS_API
> select HAVE_FUNCTION_DESCRIPTORS if PPC64_ELF_ABI_V1
> diff --git a/arch/powerpc/include/asm/fprobe.h b/arch/powerpc/include/asm/fprobe.h
> new file mode 100644
> index 000000000000..d64bc28fb3d3
> --- /dev/null
> +++ b/arch/powerpc/include/asm/fprobe.h
> @@ -0,0 +1,12 @@
> +/* SPDX-License-Identifier: GPL-2.0 */
> +#ifndef _ASM_PPC_FPROBE_H
> +#define _ASM_PPC_FPROBE_H
> +
> +#include <asm-generic/fprobe.h>
> +
> +#ifdef CONFIG_64BIT
> +#undef FPROBE_HEADER_MSB_PATTERN
> +#define FPROBE_HEADER_MSB_PATTERN (PAGE_OFFSET & ~FPROBE_HEADER_MSB_MASK)
> +#endif
> +
> +#endif /* _ASM_PPC_FPROBE_H */
> -- 
> 2.50.0
> 

<Resending to the right thread>

Tested this patch by applying on top of mainline. Build and boot is successful. Also ran ftrace selftest, intended test passed and no new failures/errors introduced with this patch. Hence,

Tested-by: Venkat Rao Bagalkote <venkat88 at linux.ibm.com>

Regards,
Venkat.



More information about the Linuxppc-dev mailing list