[GIT PULL] probes: Updates for v6.14
From: Google
Date: Tue Jan 21 2025 - 10:07:33 EST
Hi Linus,
Probes updates for v6.14:
- kprobes: Cleanups using guard() and __free(): Use cleanup.h macros
to cleanup code and remove all gotos from kprobes code. This work
includes below changes.
. kprobes: Adopt guard() and scoped_guard()
. jump_label: Define guard() for jump_label_lock
. kprobes: Use guard() for external locks
. kprobes: Use guard for rcu_read_lock
. kprobes: Remove unneeded goto
. kprobes: Remove remaining gotos
- tracing/probes: Also cleanups tracing/*probe events code with guard()
and __free(). These patches are just to simplify the parser codes.
This work includes below changes.
. tracing/kprobe: Adopt guard() and scoped_guard()
. tracing/uprobe: Adopt guard() and scoped_guard()
. tracing/eprobe: Adopt guard() and scoped_guard()
. tracing: Use __free() in trace_probe for cleanup
. tracing: Use __free() for kprobe events to cleanup
. tracing/kprobes: Simplify __trace_kprobe_create() by removing gotos
- kprobes: Reduce preempt disable scope in check_kprobe_access_safe()
This reduces preempt disable time only when getting the module
refcount in check_kprobe_access_safe(). Previously it disabled
preempt needlessly for other checks including
jump_label_text_reserved(), but it took long time because of
the linear search.
Please pull the latest probes-v6.14 tree, which can be found at:
git://git.kernel.org/pub/scm/linux/kernel/git/trace/linux-trace.git
probes-v6.14
Tag SHA1: fb6828c54b6b19d45d80d34fa9b7c03aa2e9a87b
Head SHA1: 927054606d08d95827f854246293f8379480ed15
Masami Hiramatsu (Google) (12):
kprobes: Adopt guard() and scoped_guard()
tracing/kprobe: Adopt guard() and scoped_guard()
tracing/uprobe: Adopt guard() and scoped_guard()
tracing/eprobe: Adopt guard() and scoped_guard()
jump_label: Define guard() for jump_label_lock
kprobes: Use guard() for external locks
kprobes: Use guard for rcu_read_lock
kprobes: Remove unneeded goto
kprobes: Remove remaining gotos
tracing: Use __free() in trace_probe for cleanup
tracing: Use __free() for kprobe events to cleanup
tracing/kprobes: Simplify __trace_kprobe_create() by removing gotos
Thomas Weißschuh (1):
kprobes: Reduce preempt disable scope in check_kprobe_access_safe()
----
include/linux/jump_label.h | 3 +
kernel/kprobes.c | 592 ++++++++++++++++++++------------------------
kernel/trace/trace_eprobe.c | 36 ++-
kernel/trace/trace_kprobe.c | 155 ++++++------
kernel/trace/trace_probe.c | 51 ++--
kernel/trace/trace_uprobe.c | 15 +-
6 files changed, 384 insertions(+), 468 deletions(-)
--
Masami Hiramatsu (Google) <mhiramat@xxxxxxxxxx>