Skip to content

Commit 920e500

Browse files
marcospspmladek
authored andcommitted
selftests: livepatch: test-ftrace: livepatch a traced function
This is basically the inverse case of commit 474eecc ("selftests: livepatch: test if ftrace can trace a livepatched function") but ensuring that livepatch would work on a traced function. Signed-off-by: Marcos Paulo de Souza <mpdesouza@suse.com> Reviewed-by: Petr Mladek <pmladek@suse.com> Tested-by: Petr Mladek <pmladek@suse.com> Acked-by: Miroslav Benes <mbenes@suse.cz> Acked-by: Joe Lawrence <joe.lawrence@redhat.com> Link: https://patch.msgid.link/20260220-lp-test-trace-v1-1-4b6703cd01a6@suse.com [pmladek: Fixed a typo found by Joe.] Signed-off-by: Petr Mladek <pmladek@suse.com>
1 parent 51ab33f commit 920e500

1 file changed

Lines changed: 36 additions & 0 deletions

File tree

tools/testing/selftests/livepatch/test-ftrace.sh

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -95,4 +95,40 @@ livepatch: '$MOD_LIVEPATCH': completing unpatching transition
9595
livepatch: '$MOD_LIVEPATCH': unpatching complete
9696
% rmmod $MOD_LIVEPATCH"
9797

98+
99+
# - trace a function
100+
# - verify livepatch can load targgeting on the same traced function
101+
# - check if the livepatch is in effect
102+
# - reset trace and unload livepatch
103+
104+
start_test "livepatch a traced function and check that the live patch remains in effect"
105+
106+
FUNCTION_NAME="cmdline_proc_show"
107+
108+
trace_function "$FUNCTION_NAME"
109+
load_lp $MOD_LIVEPATCH
110+
111+
if [[ "$(cat /proc/cmdline)" == "$MOD_LIVEPATCH: this has been live patched" ]] ; then
112+
log "livepatch: ok"
113+
fi
114+
115+
check_traced_functions "$FUNCTION_NAME"
116+
117+
disable_lp $MOD_LIVEPATCH
118+
unload_lp $MOD_LIVEPATCH
119+
120+
check_result "% insmod test_modules/$MOD_LIVEPATCH.ko
121+
livepatch: enabling patch '$MOD_LIVEPATCH'
122+
livepatch: '$MOD_LIVEPATCH': initializing patching transition
123+
livepatch: '$MOD_LIVEPATCH': starting patching transition
124+
livepatch: '$MOD_LIVEPATCH': completing patching transition
125+
livepatch: '$MOD_LIVEPATCH': patching complete
126+
livepatch: ok
127+
% echo 0 > $SYSFS_KLP_DIR/$MOD_LIVEPATCH/enabled
128+
livepatch: '$MOD_LIVEPATCH': initializing unpatching transition
129+
livepatch: '$MOD_LIVEPATCH': starting unpatching transition
130+
livepatch: '$MOD_LIVEPATCH': completing unpatching transition
131+
livepatch: '$MOD_LIVEPATCH': unpatching complete
132+
% rmmod $MOD_LIVEPATCH"
133+
98134
exit 0

0 commit comments

Comments
 (0)