mirror of
git://git.kernel.org/pub/scm/linux/kernel/git/xiang/erofs.git
synced 2026-11-02 23:54:33 +01:00
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 <[email protected]> Reviewed-by: Miroslav Benes <[email protected]> Reviewed-by: Joe Lawrence <[email protected]> Tested-by: Marcos Paulo de Souza <[email protected]> Reviewed-by: Marcos Paulo de Souza <[email protected]> Reviewed-by: Petr Mladek <[email protected]> Tested-by: Petr Mladek <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Petr Mladek <[email protected]>
28 lines
764 B
Makefile
28 lines
764 B
Makefile
TESTMODS_DIR := $(realpath $(dir $(abspath $(lastword $(MAKEFILE_LIST)))))
|
|
KDIR ?= /lib/modules/$(shell uname -r)/build
|
|
|
|
obj-m += test_klp_atomic_replace.o \
|
|
test_klp_callbacks_busy.o \
|
|
test_klp_callbacks_demo.o \
|
|
test_klp_callbacks_demo2.o \
|
|
test_klp_callbacks_mod.o \
|
|
test_klp_kprobe.o \
|
|
test_klp_livepatch.o \
|
|
test_klp_shadow_vars.o \
|
|
test_klp_state.o \
|
|
test_klp_state2.o \
|
|
test_klp_state3.o \
|
|
test_klp_syscall.o
|
|
|
|
# Ensure that KDIR exists, otherwise skip the compilation
|
|
modules:
|
|
ifneq ("$(wildcard $(KDIR))", "")
|
|
$(Q)$(MAKE) -C $(KDIR) modules KBUILD_EXTMOD=$(TESTMODS_DIR)
|
|
endif
|
|
|
|
# Ensure that KDIR exists, otherwise skip the clean target
|
|
clean:
|
|
ifneq ("$(wildcard $(KDIR))", "")
|
|
$(Q)$(MAKE) -C $(KDIR) clean KBUILD_EXTMOD=$(TESTMODS_DIR)
|
|
endif
|