selftests/cpu-hotplug: Use return instead of exit
authorZhao Gongyi <zhaogongyi@huawei.com>
Mon, 5 Sep 2022 13:36:12 +0000 (21:36 +0800)
committerShuah Khan <skhan@linuxfoundation.org>
Wed, 5 Oct 2022 17:05:18 +0000 (11:05 -0600)
Some cpus will be left in offline state when online
function exits in some error conditions. Use return
instead of exit to fix it.

Signed-off-by: Zhao Gongyi <zhaogongyi@huawei.com>
Signed-off-by: Shuah Khan <skhan@linuxfoundation.org>
tools/testing/selftests/cpu-hotplug/cpu-on-off-test.sh

index 1169ef8..bd2e791 100755 (executable)
@@ -4,6 +4,7 @@
 SYSFS=
 # Kselftest framework requirement - SKIP code is 4.
 ksft_skip=4
+retval=0
 
 prerequisite()
 {
@@ -102,10 +103,10 @@ online_cpu_expect_success()
 
        if ! online_cpu $cpu; then
                echo $FUNCNAME $cpu: unexpected fail >&2
-               exit 1
+               retval=1
        elif ! cpu_is_online $cpu; then
                echo $FUNCNAME $cpu: unexpected offline >&2
-               exit 1
+               retval=1
        fi
 }
 
@@ -128,10 +129,10 @@ offline_cpu_expect_success()
 
        if ! offline_cpu $cpu; then
                echo $FUNCNAME $cpu: unexpected fail >&2
-               exit 1
+               retval=1
        elif ! cpu_is_offline $cpu; then
                echo $FUNCNAME $cpu: unexpected offline >&2
-               exit 1
+               retval=1
        fi
 }
 
@@ -201,7 +202,7 @@ if [ $allcpus -eq 0 ]; then
                offline_cpu_expect_success $present_max
                online_cpu $present_max
        fi
-       exit 0
+       exit $retval
 else
        echo "Full scope test: all hotplug cpus"
        echo -e "\t online all offline cpus"
@@ -291,3 +292,5 @@ done
 
 echo 0 > $NOTIFIER_ERR_INJECT_DIR/actions/CPU_DOWN_PREPARE/error
 /sbin/modprobe -q -r cpu-notifier-error-inject
+
+exit $retval