Re: [PATCH 0/2] ftrace: make sure preemption disabled on recursion testing

From: Palmer Dabbelt
Date: Tue Oct 26 2021 - 19:48:14 EST


On Mon, 11 Oct 2021 22:39:16 PDT (-0700), yun.wang@xxxxxxxxxxxxxxxxx wrote:
The testing show that perf_ftrace_function_call() are using
smp_processor_id() with preemption enabled, all the checking
on CPU could be wrong after preemption, PATCH 1/2 will fix
that.

Besides, as Peter point out, the testing of recursion within
the section between ftrace_test_recursion_trylock()/_unlock()
pair also need the preemption disabled as the documentation
explained, PATCH 2/2 will make sure on that.

Michael Wang (2):
ftrace: disable preemption on the testing of recursion
ftrace: prevent preemption in perf_ftrace_function_call()

arch/csky/kernel/probes/ftrace.c | 2 --
arch/parisc/kernel/ftrace.c | 2 --
arch/powerpc/kernel/kprobes-ftrace.c | 2 --
arch/riscv/kernel/probes/ftrace.c | 2 --
arch/x86/kernel/kprobes/ftrace.c | 2 --
include/linux/trace_recursion.h | 10 +++++++++-
kernel/livepatch/patch.c | 6 ------
kernel/trace/trace_event_perf.c | 17 +++++++++++++----
kernel/trace/trace_functions.c | 5 -----
9 files changed, 22 insertions(+), 26 deletions(-)

Acked-by: Palmer Dabbelt <palmerdabbelt@xxxxxxxxxx> # RISC-V