linux/tools/testing/selftests/livepatch/test_modules
Michael Vetter 62597edf63 selftests: livepatch: test livepatching a kprobed function
The test proves that a function that is being kprobed and uses a
post_handler cannot be livepatched.

Only one ftrace_ops with FTRACE_OPS_FL_IPMODIFY set may be registered
to any given function at a time.

Note that the conflicting kprobe could not be created using the
tracefs interface, see Documentation/trace/kprobetrace.rst.
This interface uses only the pre_handler(), see alloc_trace_kprobe().
But FTRACE_OPS_FL_IPMODIFY is used only when the kprobe is using a
post_handler, see arm_kprobe_ftrace().

Signed-off-by: Michael Vetter <mvetter@suse.com>
Reviewed-by: Miroslav Benes <mbenes@suse.cz>
Reviewed-by: Joe Lawrence <joe.lawrence@redhat.com>
Tested-by: Marcos Paulo de Souza <mpdesouza@suse.com>
Reviewed-by: Marcos Paulo de Souza <mpdesouza@suse.com>
Reviewed-by: Petr Mladek <pmladek@suse.com>
Tested-by: Petr Mladek <pmladek@suse.com>
Link: https://lore.kernel.org/r/20241017200132.21946-4-mvetter@suse.com
Signed-off-by: Petr Mladek <pmladek@suse.com>
2024-10-22 17:13:11 +02:00
..
Makefile selftests: livepatch: test livepatching a kprobed function 2024-10-22 17:13:11 +02:00
test_klp_atomic_replace.c
test_klp_callbacks_busy.c
test_klp_callbacks_demo.c
test_klp_callbacks_demo2.c
test_klp_callbacks_mod.c
test_klp_kprobe.c selftests: livepatch: test livepatching a kprobed function 2024-10-22 17:13:11 +02:00
test_klp_livepatch.c
test_klp_shadow_vars.c
test_klp_state.c
test_klp_state2.c
test_klp_state3.c
test_klp_syscall.c