diff options
author | Daniel Lezcano <daniel.lezcano@linaro.org> | 2011-10-03 11:07:37 +0200 |
---|---|---|
committer | Daniel Lezcano <daniel.lezcano@linaro.org> | 2011-10-03 11:07:37 +0200 |
commit | 30ec45a71aa053928bea7e4e739e7c576b2c55a8 (patch) | |
tree | 04f8456c42e54d3636e6d78b6b8c840000b4d150 | |
parent | a92d69626d58b27504da94bbdce20fe72c63720c (diff) |
do some stress test
Randomly offline/online a cpu
Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org
Acked-by: Amit Kucheria <amit.kucheria@linaro.org>
-rw-r--r-- | cpuhotplug/cpuhotplug_08.sh | 49 | ||||
-rw-r--r-- | cpuhotplug/cpuhotplug_08.txt | 1 |
2 files changed, 50 insertions, 0 deletions
diff --git a/cpuhotplug/cpuhotplug_08.sh b/cpuhotplug/cpuhotplug_08.sh new file mode 100644 index 0000000..889221f --- /dev/null +++ b/cpuhotplug/cpuhotplug_08.sh @@ -0,0 +1,49 @@ +#!/bin/bash +# +# PM-QA validation test suite for the power management on ARM +# +# Copyright (C) 2011, Linaro Limited. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# +# Contributors: +# Daniel Lezcano <daniel.lezcano@linaro.org> (IBM Corporation) +# - initial API and implementation +# + +# URL : https://wiki.linaro.org/WorkingGroups/PowerManagement/Doc/QA/Scripts#cpuhotplug_08 + +source ../include/functions.sh + +function randomize() { + echo $[ ( $RANDOM % $1 ) + 1 ] +} + +random_stress() { + local cpu_present=$(cat /sys/devices/system/cpu/present | cut -d '-' -f 2) + local cpurand=$(randomize $cpu_present) + local ret= + + # randomize will in range "1-$cpu_present) so cpu0 is ignored + set_offline cpu$cpurand + ret=$? + check "cpu$cpurand is offline" "test $ret -eq 0" + + set_online cpu$cpurand + ret=$? + check "cpu$cpurand is online" "test $ret -eq 0" +} + +for i in $(seq 1 50); do random_stress || break; done diff --git a/cpuhotplug/cpuhotplug_08.txt b/cpuhotplug/cpuhotplug_08.txt new file mode 100644 index 0000000..ddfca55 --- /dev/null +++ b/cpuhotplug/cpuhotplug_08.txt @@ -0,0 +1 @@ +test userspace notification |