Skip to content

Commit ed2ec63

Browse files
wardenjohnpmladek
authored andcommitted
selftests: livepatch: add test cases of stack_order sysfs interface
Add selftest test cases to sysfs attribute 'stack_order'. Suggested-by: Petr Mladek <pmladek@suse.com> Signed-off-by: Wardenjohn <zhangwarden@gmail.com> Reviewed-by: Petr Mladek <pmladek@suse.com> Tested-by: Petr Mladek <pmladek@suse.com> Link: https://lore.kernel.org/r/20241024083530.58775-1-zhangwarden@gmail.com [pmladek@suse.com: Substitute $SYSFS_KLP_DIR] Signed-off-by: Petr Mladek <pmladek@suse.com>
1 parent 3dae09d commit ed2ec63

File tree

1 file changed

+71
-0
lines changed

1 file changed

+71
-0
lines changed

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

Lines changed: 71 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,8 @@
55
. $(dirname $0)/functions.sh
66

77
MOD_LIVEPATCH=test_klp_livepatch
8+
MOD_LIVEPATCH2=test_klp_callbacks_demo
9+
MOD_LIVEPATCH3=test_klp_syscall
810

911
setup_config
1012

@@ -19,6 +21,8 @@ check_sysfs_rights "$MOD_LIVEPATCH" "enabled" "-rw-r--r--"
1921
check_sysfs_value "$MOD_LIVEPATCH" "enabled" "1"
2022
check_sysfs_rights "$MOD_LIVEPATCH" "force" "--w-------"
2123
check_sysfs_rights "$MOD_LIVEPATCH" "replace" "-r--r--r--"
24+
check_sysfs_rights "$MOD_LIVEPATCH" "stack_order" "-r--r--r--"
25+
check_sysfs_value "$MOD_LIVEPATCH" "stack_order" "1"
2226
check_sysfs_rights "$MOD_LIVEPATCH" "transition" "-r--r--r--"
2327
check_sysfs_value "$MOD_LIVEPATCH" "transition" "0"
2428
check_sysfs_rights "$MOD_LIVEPATCH" "vmlinux/patched" "-r--r--r--"
@@ -131,4 +135,71 @@ livepatch: '$MOD_LIVEPATCH': completing unpatching transition
131135
livepatch: '$MOD_LIVEPATCH': unpatching complete
132136
% rmmod $MOD_LIVEPATCH"
133137

138+
start_test "sysfs test stack_order value"
139+
140+
load_lp $MOD_LIVEPATCH
141+
142+
check_sysfs_value "$MOD_LIVEPATCH" "stack_order" "1"
143+
144+
load_lp $MOD_LIVEPATCH2
145+
146+
check_sysfs_value "$MOD_LIVEPATCH2" "stack_order" "2"
147+
148+
load_lp $MOD_LIVEPATCH3
149+
150+
check_sysfs_value "$MOD_LIVEPATCH3" "stack_order" "3"
151+
152+
disable_lp $MOD_LIVEPATCH2
153+
unload_lp $MOD_LIVEPATCH2
154+
155+
check_sysfs_value "$MOD_LIVEPATCH" "stack_order" "1"
156+
check_sysfs_value "$MOD_LIVEPATCH3" "stack_order" "2"
157+
158+
disable_lp $MOD_LIVEPATCH3
159+
unload_lp $MOD_LIVEPATCH3
160+
161+
disable_lp $MOD_LIVEPATCH
162+
unload_lp $MOD_LIVEPATCH
163+
164+
check_result "% insmod test_modules/$MOD_LIVEPATCH.ko
165+
livepatch: enabling patch '$MOD_LIVEPATCH'
166+
livepatch: '$MOD_LIVEPATCH': initializing patching transition
167+
livepatch: '$MOD_LIVEPATCH': starting patching transition
168+
livepatch: '$MOD_LIVEPATCH': completing patching transition
169+
livepatch: '$MOD_LIVEPATCH': patching complete
170+
% insmod test_modules/$MOD_LIVEPATCH2.ko
171+
livepatch: enabling patch '$MOD_LIVEPATCH2'
172+
livepatch: '$MOD_LIVEPATCH2': initializing patching transition
173+
$MOD_LIVEPATCH2: pre_patch_callback: vmlinux
174+
livepatch: '$MOD_LIVEPATCH2': starting patching transition
175+
livepatch: '$MOD_LIVEPATCH2': completing patching transition
176+
$MOD_LIVEPATCH2: post_patch_callback: vmlinux
177+
livepatch: '$MOD_LIVEPATCH2': patching complete
178+
% insmod test_modules/$MOD_LIVEPATCH3.ko
179+
livepatch: enabling patch '$MOD_LIVEPATCH3'
180+
livepatch: '$MOD_LIVEPATCH3': initializing patching transition
181+
livepatch: '$MOD_LIVEPATCH3': starting patching transition
182+
livepatch: '$MOD_LIVEPATCH3': completing patching transition
183+
livepatch: '$MOD_LIVEPATCH3': patching complete
184+
% echo 0 > $SYSFS_KLP_DIR/$MOD_LIVEPATCH2/enabled
185+
livepatch: '$MOD_LIVEPATCH2': initializing unpatching transition
186+
$MOD_LIVEPATCH2: pre_unpatch_callback: vmlinux
187+
livepatch: '$MOD_LIVEPATCH2': starting unpatching transition
188+
livepatch: '$MOD_LIVEPATCH2': completing unpatching transition
189+
$MOD_LIVEPATCH2: post_unpatch_callback: vmlinux
190+
livepatch: '$MOD_LIVEPATCH2': unpatching complete
191+
% rmmod $MOD_LIVEPATCH2
192+
% echo 0 > $SYSFS_KLP_DIR/$MOD_LIVEPATCH3/enabled
193+
livepatch: '$MOD_LIVEPATCH3': initializing unpatching transition
194+
livepatch: '$MOD_LIVEPATCH3': starting unpatching transition
195+
livepatch: '$MOD_LIVEPATCH3': completing unpatching transition
196+
livepatch: '$MOD_LIVEPATCH3': unpatching complete
197+
% rmmod $MOD_LIVEPATCH3
198+
% echo 0 > $SYSFS_KLP_DIR/$MOD_LIVEPATCH/enabled
199+
livepatch: '$MOD_LIVEPATCH': initializing unpatching transition
200+
livepatch: '$MOD_LIVEPATCH': starting unpatching transition
201+
livepatch: '$MOD_LIVEPATCH': completing unpatching transition
202+
livepatch: '$MOD_LIVEPATCH': unpatching complete
203+
% rmmod $MOD_LIVEPATCH"
204+
134205
exit 0

0 commit comments

Comments
 (0)