[PATCH] selftests: livepatch: add test case of stack_order sysfs interface

Wardenjohn posted 1 patch 1 month, 3 weeks ago
.../testing/selftests/livepatch/test-sysfs.sh | 24 +++++++++++++++++++
1 file changed, 24 insertions(+)
[PATCH] selftests: livepatch: add test case of stack_order sysfs interface
Posted by Wardenjohn 1 month, 3 weeks ago
Add test case of stack_order sysfs interface of livepatch.

Signed-off-by: Wardenjohn <zhangwarden@gmail.com>
---
 .../testing/selftests/livepatch/test-sysfs.sh | 24 +++++++++++++++++++
 1 file changed, 24 insertions(+)

diff --git a/tools/testing/selftests/livepatch/test-sysfs.sh b/tools/testing/selftests/livepatch/test-sysfs.sh
index 05a14f5a7bfb..81776749a4e3 100755
--- a/tools/testing/selftests/livepatch/test-sysfs.sh
+++ b/tools/testing/selftests/livepatch/test-sysfs.sh
@@ -19,6 +19,7 @@ check_sysfs_rights "$MOD_LIVEPATCH" "enabled" "-rw-r--r--"
 check_sysfs_value  "$MOD_LIVEPATCH" "enabled" "1"
 check_sysfs_rights "$MOD_LIVEPATCH" "force" "--w-------"
 check_sysfs_rights "$MOD_LIVEPATCH" "replace" "-r--r--r--"
+check_sysfs_rights "$MOD_LIVEPATCH" "stack_order" "-r--r--r--"
 check_sysfs_rights "$MOD_LIVEPATCH" "transition" "-r--r--r--"
 check_sysfs_value  "$MOD_LIVEPATCH" "transition" "0"
 check_sysfs_rights "$MOD_LIVEPATCH" "vmlinux/patched" "-r--r--r--"
@@ -131,4 +132,27 @@ livepatch: '$MOD_LIVEPATCH': completing unpatching transition
 livepatch: '$MOD_LIVEPATCH': unpatching complete
 % rmmod $MOD_LIVEPATCH"
 
+start_test "sysfs test stack_order read"
+
+load_lp $MOD_LIVEPATCH
+
+check_sysfs_rights "$MOD_LIVEPATCH" "stack_order" "-r--r--r--"
+check_sysfs_value  "$MOD_LIVEPATCH" "stack_order" "1"
+
+disable_lp $MOD_LIVEPATCH
+unload_lp $MOD_LIVEPATCH
+
+check_result "% insmod test_modules/$MOD_LIVEPATCH.ko replace=0
+livepatch: enabling patch '$MOD_LIVEPATCH'
+livepatch: '$MOD_LIVEPATCH': initializing patching transition
+livepatch: '$MOD_LIVEPATCH': starting patching transition
+livepatch: '$MOD_LIVEPATCH': completing patching transition
+livepatch: '$MOD_LIVEPATCH': patching complete
+% echo 0 > /sys/kernel/livepatch/$MOD_LIVEPATCH/enabled
+livepatch: '$MOD_LIVEPATCH': initializing unpatching transition
+livepatch: '$MOD_LIVEPATCH': starting unpatching transition
+livepatch: '$MOD_LIVEPATCH': completing unpatching transition
+livepatch: '$MOD_LIVEPATCH': unpatching complete
+% rmmod $MOD_LIVEPATCH"
+
 exit 0
-- 
2.18.2
Re: [PATCH] selftests: livepatch: add test case of stack_order sysfs interface
Posted by Josh Poimboeuf 1 month, 3 weeks ago
On Mon, Oct 07, 2024 at 10:11:39PM +0800, Wardenjohn wrote:
> Add test case of stack_order sysfs interface of livepatch.
> 
> Signed-off-by: Wardenjohn <zhangwarden@gmail.com>
> ---
>  .../testing/selftests/livepatch/test-sysfs.sh | 24 +++++++++++++++++++
>  1 file changed, 24 insertions(+)
> 
> diff --git a/tools/testing/selftests/livepatch/test-sysfs.sh b/tools/testing/selftests/livepatch/test-sysfs.sh
> index 05a14f5a7bfb..81776749a4e3 100755
> --- a/tools/testing/selftests/livepatch/test-sysfs.sh
> +++ b/tools/testing/selftests/livepatch/test-sysfs.sh
> @@ -19,6 +19,7 @@ check_sysfs_rights "$MOD_LIVEPATCH" "enabled" "-rw-r--r--"
>  check_sysfs_value  "$MOD_LIVEPATCH" "enabled" "1"
>  check_sysfs_rights "$MOD_LIVEPATCH" "force" "--w-------"
>  check_sysfs_rights "$MOD_LIVEPATCH" "replace" "-r--r--r--"
> +check_sysfs_rights "$MOD_LIVEPATCH" "stack_order" "-r--r--r--"
>  check_sysfs_rights "$MOD_LIVEPATCH" "transition" "-r--r--r--"
>  check_sysfs_value  "$MOD_LIVEPATCH" "transition" "0"
>  check_sysfs_rights "$MOD_LIVEPATCH" "vmlinux/patched" "-r--r--r--"
> @@ -131,4 +132,27 @@ livepatch: '$MOD_LIVEPATCH': completing unpatching transition
>  livepatch: '$MOD_LIVEPATCH': unpatching complete
>  % rmmod $MOD_LIVEPATCH"
>  
> +start_test "sysfs test stack_order read"
> +
> +load_lp $MOD_LIVEPATCH
> +
> +check_sysfs_rights "$MOD_LIVEPATCH" "stack_order" "-r--r--r--"
> +check_sysfs_value  "$MOD_LIVEPATCH" "stack_order" "1"

At the very least this should load more than one module so it can verify
the stack orders match the load order.

-- 
Josh
Re: [PATCH] selftests: livepatch: add test case of stack_order sysfs interface
Posted by zhang warden 1 month, 2 weeks ago
Hi, Josh.
> On Oct 8, 2024, at 01:39, Josh Poimboeuf <jpoimboe@kernel.org> wrote:
> 
> On Mon, Oct 07, 2024 at 10:11:39PM +0800, Wardenjohn wrote:
>> Add test case of stack_order sysfs interface of livepatch.
>> 
>> Signed-off-by: Wardenjohn <zhangwarden@gmail.com>
>> ---
>> .../testing/selftests/livepatch/test-sysfs.sh | 24 +++++++++++++++++++
>> 1 file changed, 24 insertions(+)
>> 
>> diff --git a/tools/testing/selftests/livepatch/test-sysfs.sh b/tools/testing/selftests/livepatch/test-sysfs.sh
>> index 05a14f5a7bfb..81776749a4e3 100755
>> --- a/tools/testing/selftests/livepatch/test-sysfs.sh
>> +++ b/tools/testing/selftests/livepatch/test-sysfs.sh
>> @@ -19,6 +19,7 @@ check_sysfs_rights "$MOD_LIVEPATCH" "enabled" "-rw-r--r--"
>> check_sysfs_value  "$MOD_LIVEPATCH" "enabled" "1"
>> check_sysfs_rights "$MOD_LIVEPATCH" "force" "--w-------"
>> check_sysfs_rights "$MOD_LIVEPATCH" "replace" "-r--r--r--"
>> +check_sysfs_rights "$MOD_LIVEPATCH" "stack_order" "-r--r--r--"
>> check_sysfs_rights "$MOD_LIVEPATCH" "transition" "-r--r--r--"
>> check_sysfs_value  "$MOD_LIVEPATCH" "transition" "0"
>> check_sysfs_rights "$MOD_LIVEPATCH" "vmlinux/patched" "-r--r--r--"
>> @@ -131,4 +132,27 @@ livepatch: '$MOD_LIVEPATCH': completing unpatching transition
>> livepatch: '$MOD_LIVEPATCH': unpatching complete
>> % rmmod $MOD_LIVEPATCH"
>> 
>> +start_test "sysfs test stack_order read"
>> +
>> +load_lp $MOD_LIVEPATCH
>> +
>> +check_sysfs_rights "$MOD_LIVEPATCH" "stack_order" "-r--r--r--"
>> +check_sysfs_value  "$MOD_LIVEPATCH" "stack_order" "1"
> 
> At the very least this should load more than one module so it can verify
> the stack orders match the load order.
> 
> -- 
> Josh

I got it. And I found more test modules in selftests/livepatch/test_modules

I will fix this problem with the modules inside.

Thank you!

Regards.
Wardenjohn.