mirror of
https://github.com/torvalds/linux.git
synced 2024-11-23 04:31:50 +00:00
selftests: cpufreq: conform test to TAP
This test outputs lots of information. Let's conform the core part of the test to TAP and leave the information printing messages for now. Include ktap_helpers.sh to print conformed logs. Use KSFT_* macros to return the correct exit code for the kselftest framework and CIs to understand the exit status. Signed-off-by: Muhammad Usama Anjum <usama.anjum@collabora.com> Acked-by: Viresh Kumar <viresh.kumar@linaro.org> Signed-off-by: Shuah Khan <skhan@linuxfoundation.org>
This commit is contained in:
parent
557f137527
commit
c7e84706fd
@ -178,8 +178,7 @@ cpufreq_basic_tests()
|
||||
|
||||
count=$(count_cpufreq_managed_cpus)
|
||||
if [ $count = 0 ]; then
|
||||
printf "No cpu is managed by cpufreq core, exiting\n"
|
||||
exit;
|
||||
ktap_exit_fail_msg "No cpu is managed by cpufreq core, exiting\n"
|
||||
else
|
||||
printf "CPUFreq manages: $count CPUs\n\n"
|
||||
fi
|
||||
|
@ -7,15 +7,15 @@ source governor.sh
|
||||
source module.sh
|
||||
source special-tests.sh
|
||||
|
||||
DIR="$(dirname $(readlink -f "$0"))"
|
||||
source "${DIR}"/../kselftest/ktap_helpers.sh
|
||||
|
||||
FUNC=basic # do basic tests by default
|
||||
OUTFILE=cpufreq_selftest
|
||||
SYSFS=
|
||||
CPUROOT=
|
||||
CPUFREQROOT=
|
||||
|
||||
# Kselftest framework requirement - SKIP code is 4.
|
||||
ksft_skip=4
|
||||
|
||||
helpme()
|
||||
{
|
||||
printf "Usage: $0 [-h] [-todg args]
|
||||
@ -32,7 +32,7 @@ helpme()
|
||||
[-d <driver's module name: only with \"-t modtest>\"]
|
||||
[-g <governor's module name: only with \"-t modtest>\"]
|
||||
\n"
|
||||
exit 2
|
||||
exit "${KSFT_FAIL}"
|
||||
}
|
||||
|
||||
prerequisite()
|
||||
@ -40,8 +40,8 @@ prerequisite()
|
||||
msg="skip all tests:"
|
||||
|
||||
if [ $UID != 0 ]; then
|
||||
echo $msg must be run as root >&2
|
||||
exit $ksft_skip
|
||||
ktap_skip_all "$msg must be run as root"
|
||||
exit "${KSFT_SKIP}"
|
||||
fi
|
||||
|
||||
taskset -p 01 $$
|
||||
@ -49,21 +49,21 @@ prerequisite()
|
||||
SYSFS=`mount -t sysfs | head -1 | awk '{ print $3 }'`
|
||||
|
||||
if [ ! -d "$SYSFS" ]; then
|
||||
echo $msg sysfs is not mounted >&2
|
||||
exit 2
|
||||
ktap_skip_all "$msg sysfs is not mounted"
|
||||
exit "${KSFT_SKIP}"
|
||||
fi
|
||||
|
||||
CPUROOT=$SYSFS/devices/system/cpu
|
||||
CPUFREQROOT="$CPUROOT/cpufreq"
|
||||
|
||||
if ! ls $CPUROOT/cpu* > /dev/null 2>&1; then
|
||||
echo $msg cpus not available in sysfs >&2
|
||||
exit 2
|
||||
ktap_skip_all "$msg cpus not available in sysfs"
|
||||
exit "${KSFT_SKIP}"
|
||||
fi
|
||||
|
||||
if ! ls $CPUROOT/cpufreq > /dev/null 2>&1; then
|
||||
echo $msg cpufreq directory not available in sysfs >&2
|
||||
exit 2
|
||||
ktap_skip_all "$msg cpufreq directory not available in sysfs"
|
||||
exit "${KSFT_SKIP}"
|
||||
fi
|
||||
}
|
||||
|
||||
@ -105,8 +105,7 @@ do_test()
|
||||
count=$(count_cpufreq_managed_cpus)
|
||||
|
||||
if [ $count = 0 -a $FUNC != "modtest" ]; then
|
||||
echo "No cpu is managed by cpufreq core, exiting"
|
||||
exit 2;
|
||||
ktap_exit_fail_msg "No cpu is managed by cpufreq core, exiting"
|
||||
fi
|
||||
|
||||
case "$FUNC" in
|
||||
@ -125,8 +124,7 @@ do_test()
|
||||
"modtest")
|
||||
# Do we have modules in place?
|
||||
if [ -z $DRIVER_MOD ] && [ -z $GOVERNOR_MOD ]; then
|
||||
echo "No driver or governor module passed with -d or -g"
|
||||
exit 2;
|
||||
ktap_exit_fail_msg "No driver or governor module passed with -d or -g"
|
||||
fi
|
||||
|
||||
if [ $DRIVER_MOD ]; then
|
||||
@ -137,8 +135,7 @@ do_test()
|
||||
fi
|
||||
else
|
||||
if [ $count = 0 ]; then
|
||||
echo "No cpu is managed by cpufreq core, exiting"
|
||||
exit 2;
|
||||
ktap_exit_fail_msg "No cpu is managed by cpufreq core, exiting"
|
||||
fi
|
||||
|
||||
module_governor_test $GOVERNOR_MOD
|
||||
@ -162,7 +159,7 @@ do_test()
|
||||
;;
|
||||
|
||||
*)
|
||||
echo "Invalid [-f] function type"
|
||||
ktap_print_msg "Invalid [-f] function type"
|
||||
helpme
|
||||
;;
|
||||
esac
|
||||
@ -186,13 +183,25 @@ dmesg_dumps()
|
||||
dmesg >> $1.dmesg_full.txt
|
||||
}
|
||||
|
||||
ktap_print_header
|
||||
|
||||
# Parse arguments
|
||||
parse_arguments $@
|
||||
|
||||
ktap_set_plan 1
|
||||
|
||||
# Make sure all requirements are met
|
||||
prerequisite
|
||||
|
||||
# Run requested functions
|
||||
clear_dumps $OUTFILE
|
||||
do_test | tee -a $OUTFILE.txt
|
||||
if [ "${PIPESTATUS[0]}" -ne 0 ]; then
|
||||
exit ${PIPESTATUS[0]};
|
||||
fi
|
||||
dmesg_dumps $OUTFILE
|
||||
|
||||
ktap_test_pass "Completed successfully"
|
||||
|
||||
ktap_print_totals
|
||||
exit "${KSFT_PASS}"
|
||||
|
@ -24,16 +24,14 @@ test_basic_insmod_rmmod()
|
||||
# insert module
|
||||
insmod $1
|
||||
if [ $? != 0 ]; then
|
||||
printf "Insmod $1 failed\n"
|
||||
exit;
|
||||
ktap_exit_fail_msg "Insmod $1 failed\n"
|
||||
fi
|
||||
|
||||
printf "Removing $1 module\n"
|
||||
# remove module
|
||||
rmmod $1
|
||||
if [ $? != 0 ]; then
|
||||
printf "rmmod $1 failed\n"
|
||||
exit;
|
||||
ktap_exit_fail_msg "rmmod $1 failed\n"
|
||||
fi
|
||||
|
||||
printf "\n"
|
||||
|
Loading…
Reference in New Issue
Block a user