Hi, Here is the 3rd version of the series to unify the kretprobe trampoline handler implementation across all architectures which are currently kprobes supported. Previous version is here; https://lkml.kernel.org/r/159852811819.707944.12798182250041968537.stgit@devnote2 This series removes the in_nmi() check from pre_kretprobe_handler() since we can avoid double-lock deadlock from NMI by kprobe_busy_begin/end() and use kfree_rcu() to release kretprobe_instance. Also, cleanup local functions to static symbols. Thank you, --- Masami Hiramatsu (16): kprobes: Add generic kretprobe trampoline handler x86/kprobes: Use generic kretprobe trampoline handler arm: kprobes: Use generic kretprobe trampoline handler arm64: kprobes: Use generic kretprobe trampoline handler arc: kprobes: Use generic kretprobe trampoline handler csky: kprobes: Use generic kretprobe trampoline handler ia64: kprobes: Use generic kretprobe trampoline handler mips: kprobes: Use generic kretprobe trampoline handler parisc: kprobes: Use generic kretprobe trampoline handler powerpc: kprobes: Use generic kretprobe trampoline handler s390: kprobes: Use generic kretprobe trampoline handler sh: kprobes: Use generic kretprobe trampoline handler sparc: kprobes: Use generic kretprobe trampoline handler kprobes: Remove NMI context check kprobes: Free kretprobe_instance with rcu callback kprobes: Make local used functions static arch/arc/kernel/kprobes.c | 55 +-------------- arch/arm/probes/kprobes/core.c | 79 +-------------------- arch/arm64/kernel/probes/kprobes.c | 79 +-------------------- arch/csky/kernel/probes/kprobes.c | 78 +-------------------- arch/ia64/kernel/kprobes.c | 79 +-------------------- arch/mips/kernel/kprobes.c | 55 +-------------- arch/parisc/kernel/kprobes.c | 78 ++------------------- arch/powerpc/kernel/kprobes.c | 55 +-------------- arch/s390/kernel/kprobes.c | 81 +-------------------- arch/sh/kernel/kprobes.c | 59 +--------------- arch/sparc/kernel/kprobes.c | 52 +------------- arch/x86/kernel/kprobes/core.c | 109 +---------------------------- include/linux/kprobes.h | 51 ++++++++------ kernel/kprobes.c | 136 +++++++++++++++++++++++++++++------- 14 files changed, 190 insertions(+), 856 deletions(-) -- Masami Hiramatsu (Linaro) <mhiramat@xxxxxxxxxx>