Commit 05564c29 authored by Shuah Khan's avatar Shuah Khan
Browse files

selftests: livepatch: Fix it to do root uid check and skip



livepatch test configures the system and debug environment to run
tests. Some of these actions fail without root access and test
dumps several permission denied messages before it exits.

Fix test-state.sh to call setup_config instead of set_dynamic_debug
as suggested by Petr Mladek <pmladek@suse.com>

Fix it to check root uid and exit with skip code instead.

Signed-off-by: default avatarShuah Khan <skhan@linuxfoundation.org>
Acked-by: default avatarJoe Lawrence <joe.lawrence@redhat.com>
Reviewed-by: default avatarPetr Mladek <pmladek@suse.com>
Signed-off-by: default avatarShuah Khan <skhan@linuxfoundation.org>
parent c65e4153
Loading
Loading
Loading
Loading
+14 −1
Original line number Diff line number Diff line
@@ -7,6 +7,9 @@
MAX_RETRIES=600
RETRY_INTERVAL=".1"	# seconds

# Kselftest framework requirement - SKIP code is 4
ksft_skip=4

# log(msg) - write message to kernel log
#	msg - insightful words
function log() {
@@ -18,7 +21,16 @@ function log() {
function skip() {
	log "SKIP: $1"
	echo "SKIP: $1" >&2
	exit 4
	exit $ksft_skip
}

# root test
function is_root() {
	uid=$(id -u)
	if [ $uid -ne 0 ]; then
		echo "skip all tests: must be run as root" >&2
		exit $ksft_skip
	fi
}

# die(msg) - game over, man
@@ -62,6 +74,7 @@ function set_ftrace_enabled() {
#		 for verbose livepatching output and turn on
#		 the ftrace_enabled sysctl.
function setup_config() {
	is_root
	push_config
	set_dynamic_debug
	set_ftrace_enabled 1
+1 −2
Original line number Diff line number Diff line
@@ -8,8 +8,7 @@ MOD_LIVEPATCH=test_klp_state
MOD_LIVEPATCH2=test_klp_state2
MOD_LIVEPATCH3=test_klp_state3

set_dynamic_debug

setup_config

# TEST: Loading and removing a module that modifies the system state