This series implements livepatch on PPC32 and implements CONFIG_DYNAMIC_FTRACE_WITH_ARGS to simplify ftracing. v2: - Fix problem with strict modules RWX - Convert powerpc to CONFIG_DYNAMIC_FTRACE_WITH_ARGS - Convert function graph tracing to C - Refactor PPC32 versus PPC64 Signed-off-by: Christophe Leroy <christophe.leroy@xxxxxxxxxx> Christophe Leroy (13): livepatch: Fix build failure on 32 bits processors tracing: Fix selftest config check for function graph start up test powerpc/module_32: Fix livepatching for RO modules powerpc/ftrace: Add support for livepatch to PPC32 powerpc/ftrace: Don't save again LR in ftrace_regs_caller() on PPC32 powerpc/ftrace: Simplify PPC32's return_to_handler() powerpc/ftrace: Prepare PPC32's ftrace_caller() for CONFIG_DYNAMIC_FTRACE_WITH_ARGS powerpc/ftrace: Prepare PPC64's ftrace_caller() for CONFIG_DYNAMIC_FTRACE_WITH_ARGS powerpc/ftrace: Implement CONFIG_DYNAMIC_FTRACE_WITH_ARGS powerpc/ftrace: Refactor ftrace_{en/dis}able_ftrace_graph_caller powerpc/ftrace: directly call of function graph tracer by ftrace caller powerpc/ftrace: Prepare ftrace_64_mprofile.S for reuse by PPC32 powerpc/ftrace: Remove ftrace_32.S arch/powerpc/Kconfig | 7 +- arch/powerpc/include/asm/ftrace.h | 62 +++--- arch/powerpc/include/asm/livepatch.h | 12 +- arch/powerpc/include/asm/thread_info.h | 2 +- arch/powerpc/kernel/asm-offsets.c | 2 +- arch/powerpc/kernel/module_32.c | 44 +++-- arch/powerpc/kernel/trace/Makefile | 7 +- arch/powerpc/kernel/trace/ftrace.c | 32 +-- arch/powerpc/kernel/trace/ftrace_32.S | 187 ------------------ .../trace/{ftrace_64.S => ftrace_low.S} | 14 ++ ...ftrace_64_mprofile.S => ftrace_mprofile.S} | 158 +++++++-------- kernel/livepatch/core.c | 4 +- kernel/trace/trace_selftest.c | 6 +- 13 files changed, 178 insertions(+), 359 deletions(-) delete mode 100644 arch/powerpc/kernel/trace/ftrace_32.S rename arch/powerpc/kernel/trace/{ftrace_64.S => ftrace_low.S} (85%) rename arch/powerpc/kernel/trace/{ftrace_64_mprofile.S => ftrace_mprofile.S} (75%) -- 2.33.1