diff options
author | root <root@rshg054.dnsready.net> | 2012-03-23 00:01:14 +0000 |
---|---|---|
committer | root <root@rshg054.dnsready.net> | 2012-03-23 00:01:14 +0000 |
commit | 1512c792951d7fbd2c9c336f9bf35654bbb85cc6 (patch) | |
tree | d786dcc22bc7f01d7629eb8a07415d2a904fc015 /libre/linux-libre-tools/cpupower.rc | |
parent | 39e662ccfbe62ae77d458159d192816171a22f43 (diff) |
Fri Mar 23 00:01:14 UTC 2012
Diffstat (limited to 'libre/linux-libre-tools/cpupower.rc')
-rw-r--r-- | libre/linux-libre-tools/cpupower.rc | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/libre/linux-libre-tools/cpupower.rc b/libre/linux-libre-tools/cpupower.rc new file mode 100644 index 000000000..9b0bcddb7 --- /dev/null +++ b/libre/linux-libre-tools/cpupower.rc @@ -0,0 +1,41 @@ +#!/bin/bash + +. /etc/rc.conf +. /etc/rc.d/functions + +[[ -f /etc/conf.d/cpupower ]] && . /etc/conf.d/cpupower + +case "$1" in + start|restart) + stat_busy "Setting cpupower rules" + declare -i fail=0 + + # frequency-set options + declare -a params=() + params+=(${governor:+-g $governor}) + params+=(${min_freq:+-d $min_freq}) + params+=(${max_freq:+-u $max_freq}) + params+=(${freq:+-f $freq}) + if ((${#params[@]} > 0)); then + cpupower frequency-set "${params[@]}" >/dev/null || fail=1 + fi + + # set options + declare -a params=() + params+=(${mc_scheduler:+-m $mc_scheduler}) + params+=(${smp_scheduler:+-s $smp_scheduler}) + params+=(${perf_bias:+-b $perf_bias}) + if ((${#params[@]} > 0)); then + cpupower set "${params[@]}" >/dev/null || fail=1 + fi + + # print failure if any + (($fail > 0)) && stat_fail && exit 1 || stat_done + ;; + *) + echo "usage: $0 {start|restart}" +esac + +true + +# vim:set ts=2 sw=2 ft=sh et: |