Focus on returning the results of each test script rather
than the results of each subtest. This will help to keep the
number of PM-QA test results consistent across multiple boards
regardless of number of frequencies, cores, etc.
Examples before the refactoring:
https://validation.linaro.org/dashboard/streams
/anonymous/lisatn/bundles/331786fb33a49b060adccf51bb509d5f286422e7/
Examples after the refactoring:
https://validation.linaro.org/dashboard/streams/anonymous
/lisatn/bundles/3451b80ed9ba8a813b109dac1c41b09f0445f819/
Once this patch is accepted and merged, then there will be a
follow up patch to update the pwrmgmt test definition, so LAVA
can record PM-QA results accurately.
Signed-off-by: Lisa Nguyen <lisa.nguyen(a)linaro.org>
---
Changes from v1 to v2:
- Rewrite test_status_show() function
- Add description and log_skip() function in thermal_05
- Moved skip/fail/pass counts to log_end() function
cpufreq/cpufreq_07.sh | 2 +-
include/functions.sh | 35 ++++++++++++++++++++++++++++++-----
thermal/thermal_05.sh | 1 +
thermal/thermal_06.sh | 2 +-
4 files changed, 33 insertions(+), 7 deletions(-)
diff --git a/cpufreq/cpufreq_07.sh b/cpufreq/cpufreq_07.sh
index f8f9e8e..b65d212 100755
--- a/cpufreq/cpufreq_07.sh
+++ b/cpufreq/cpufreq_07.sh
@@ -74,7 +74,7 @@ check_ondemand() {
supported=$(cat $CPU_PATH/cpu0/cpufreq/scaling_available_governors | grep "ondemand")
if [ -z "$supported" ]; then
log_skip "ondemand not supported"
- exit 0
+ return 0
fi
save_governors
diff --git a/include/functions.sh b/include/functions.sh
index 417c725..d06fb4e 100644
--- a/include/functions.sh
+++ b/include/functions.sh
@@ -32,14 +32,31 @@ INC=0
CPU=
pass_count=0
fail_count=0
+skip_count=0
+test_script_status="pass"
test_status_show() {
- echo "-------- total = $(($pass_count + $fail_count))"
- echo "-------- pass = $pass_count"
- # report failure only if it is there
- if [ $fail_count -ne 0 ] ; then
- echo "-------- fail = $fail_count"
+ if [ "$fail_count" -ne "0" ]; then
+ test_script_status="fail"
+ else
+ if [ "$skip_count" -ne "0" ]; then
+ if [ "$pass_count" -ne "0"]; then
+ test_script_status="pass"
+ else
+ test_script_status="skip"
+ fi
+ fi
+ fi
+
+ echo " "
+ if [[ "$test_script_status" == "fail" ]]; then
+ echo "$TEST_NAME: fail"
+ elif [[ "$test_script_status" == "skip" ]]; then
+ echo "$TEST_NAME: skip"
+ else
+ echo "$TEST_NAME: pass"
fi
+ echo " "
}
log_begin() {
@@ -49,6 +66,14 @@ log_begin() {
log_end() {
printf "$*\n"
+
+ if [[ "$*" == "Err" ]]; then
+ fail_count=$(($fail_count + 1))
+ elif [[ "$*" == "skip" ]]; then
+ skip_count=$(($fail_count + 1))
+ else
+ pass_count=$(($pass_count + 1))
+ fi
}
log_skip() {
diff --git a/thermal/thermal_05.sh b/thermal/thermal_05.sh
index 05f83d1..c621b49 100755
--- a/thermal/thermal_05.sh
+++ b/thermal/thermal_05.sh
@@ -36,6 +36,7 @@ verify_cpufreq_cooling_device_action() {
local cpufreq_cdev=$(cat $dirpath/type)
cat $dirpath/type | grep cpufreq
if [ $? -ne 0 ] ; then
+ log_skip "Cannot find cpufreq in $cdev_name..."
return 0
fi
diff --git a/thermal/thermal_06.sh b/thermal/thermal_06.sh
index 92c987a..d8877f0 100755
--- a/thermal/thermal_06.sh
+++ b/thermal/thermal_06.sh
@@ -30,7 +30,7 @@ source ../include/thermal_functions.sh
if [ "$thermal_try_max" -eq 0 ]; then
log_skip "test of trip points being crossed"
- exit 0
+ return 0
fi
TEST_LOOP=100
--
1.7.9.5
Focus on returning the results of each test script rather
than the results of each subtest. This will help to keep the
number of pm-qa test results consistent across multiple boards
regardless of number of frequencies, cores, etc.
Examples before the refactoring:
https://validation.linaro.org/dashboard/streams
/anonymous/lisatn/bundles/331786fb33a49b060adccf51bb509d5f286422e7/
Examples after the refactoring:
https://validation.linaro.org/dashboard/streams/anonymous
/lisatn/bundles/3451b80ed9ba8a813b109dac1c41b09f0445f819/
Questions and comments are highly encouraged as it's possible that
the logic can be improved, or my explanation can be clearer. Also,
once the final version of this patch is accepted and merged, then
there will be a follow up patch to update the pwrmgmt test
definition, so LAVA can record PM-QA results accurately.
Signed-off-by: Lisa Nguyen <lisa.nguyen(a)linaro.org>
---
cpufreq/cpufreq_09.sh | 2 +-
include/functions.sh | 22 +++++++++++++++++++---
include/thermal_functions.sh | 6 +++++-
thermal/thermal_06.sh | 2 +-
4 files changed, 26 insertions(+), 6 deletions(-)
diff --git a/cpufreq/cpufreq_09.sh b/cpufreq/cpufreq_09.sh
index 7b65eec..62c953d 100755
--- a/cpufreq/cpufreq_09.sh
+++ b/cpufreq/cpufreq_09.sh
@@ -65,7 +65,7 @@ save_governors
supported=$(cat $CPU_PATH/cpu0/cpufreq/scaling_available_governors | grep "powersave")
if [ -z "$supported" ]; then
log_skip "powersave not supported"
- exit 0
+ return 0
fi
trap "restore_governors; sigtrap" SIGHUP SIGINT SIGTERM
diff --git a/include/functions.sh b/include/functions.sh
index 417c725..a4625ad 100644
--- a/include/functions.sh
+++ b/include/functions.sh
@@ -32,14 +32,29 @@ INC=0
CPU=
pass_count=0
fail_count=0
+skip_count=0
+test_script_status="true"
test_status_show() {
- echo "-------- total = $(($pass_count + $fail_count))"
- echo "-------- pass = $pass_count"
# report failure only if it is there
if [ $fail_count -ne 0 ] ; then
- echo "-------- fail = $fail_count"
+ test_script_status="false"
+ elif [[ $skip_count -ne 0 && $fail_count -eq 0 ]] ; then
+ test_script_status="skip"
+ elif [[ $pass_count -ne 0 && $skip_count -ne 0 ]] ; then
+ test_script_status="pass"
fi
+
+ #print test script result
+ echo " "
+ if [[ $test_script_status == "true" ]]; then
+ echo $TEST_NAME: "pass"
+ elif [[ $test_script_status == "skip" ]]; then
+ echo $TEST_NAME: "skip"
+ else
+ echo $TEST_NAME: "fail"
+ fi
+ echo " "
}
log_begin() {
@@ -54,6 +69,7 @@ log_end() {
log_skip() {
log_begin "$@"
log_end "skip"
+ skip_count=$(($skip_count + 1))
}
for_each_cpu() {
diff --git a/include/thermal_functions.sh b/include/thermal_functions.sh
index a51240b..a719487 100644
--- a/include/thermal_functions.sh
+++ b/include/thermal_functions.sh
@@ -44,11 +44,12 @@ check_valid_temp() {
if [ $temp_val -gt 0 ]; then
log_end "Ok"
+ pass_count=$(($pass_count + 1))
return 0
fi
log_end "Err"
-
+ fail_count=$(($fail_count + 1))
return 1
}
@@ -126,10 +127,12 @@ check_valid_binding() {
log_begin "checking $descr"
if [ $trip_point_val -ge $trip_point_max ]; then
log_end "Err"
+ fail_count=$(($fail_count + 1))
return 1
fi
log_end "Ok"
+ pass_count=$(($pass_count + 1))
return 0
}
@@ -165,6 +168,7 @@ for_each_cooling_device() {
devices=$(ls $THERMAL_PATH | grep "cooling_device['$MAX_CDEV']")
if [ "$devices" == "" ]; then
log_skip "no cooling devices"
+ skip_count=$(($skip_count + 1))
return 0
fi
diff --git a/thermal/thermal_06.sh b/thermal/thermal_06.sh
index 92c987a..d8877f0 100755
--- a/thermal/thermal_06.sh
+++ b/thermal/thermal_06.sh
@@ -30,7 +30,7 @@ source ../include/thermal_functions.sh
if [ "$thermal_try_max" -eq 0 ]; then
log_skip "test of trip points being crossed"
- exit 0
+ return 0
fi
TEST_LOOP=100
--
1.7.9.5
== Progress ==
* Enabling UEFI Fastboot on Panda - on hold (CARD-198: 0 %)
* CARD 1103: Flash support on u-boot fastboot (CARD-1103: 100%)
- Added oem format functionality, DFU Initialization
- Fixed partition related issues
- restructured the code as per Rob’s comments, sent the code for review
- Testing the changes for flashing command, fixing the issues in the process
== Plans ==
* CARD-198: Start working on the activity on Panda/BBB, depending on
availability of board (20%)
* CARD 1103: Send the patches for review to u-boot mailing list and
upstream. (CARD-1103: 80%)
- testing the changes and working on stabilization of flashing functionality
- Need to break the code into meaningful patches to upstream
== Issues ==
* None
== Progress ==
* traveled to Cambridge, ran aarch64 tests
* started on toolchain 2014.07 builds
* helped with android-on-armv8 2014.07 release
* investigated some aarch64 specific problems in android
== Plans ==
* finish toolchain 2014.07 builds
* Update NDK to 10
== Issues ==
* need aarch64 hardware
* visiting my sister next week, connectivity will probably be limited
== Progress ==
DEVPLAT-2
61: Migration of Android Builds from 4.4.3 to 4.4.4
== Plans ==
1. Vayu Board is booting up. Looking into the issue present in Android
4.4.3 bootup
2. Migration of Vayu from 4.4.3 to 4.4.4, as It has original android
booting problem on Vayu.
3. Test the ARMv8 premerge CI 3.14 locally
== Issues ==
Non
e