summaryrefslogtreecommitdiffstats
path: root/drivers/cpuidle
diff options
context:
space:
mode:
authorSivaram Nair <sivaramn@nvidia.com>2012-12-18 13:52:50 +0100
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>2013-01-03 13:11:05 +0100
commit0e5537b30d3029d784226ab51c2b923d1155b553 (patch)
tree011a828504a97450442738363560804024f54a02 /drivers/cpuidle
parentLinux 3.8-rc2 (diff)
downloadlinux-0e5537b30d3029d784226ab51c2b923d1155b553.tar.xz
linux-0e5537b30d3029d784226ab51c2b923d1155b553.zip
cpuidle: Fix finding state with min power_usage
Since cpuidle_state.power_usage is a signed value, use INT_MAX (instead of -1) to init the local copies so that functions that tries to find cpuidle states with minimum power usage works correctly even if they use non-negative values. Signed-off-by: Sivaram Nair <sivaramn@nvidia.com> Reviewed-by: Rik van Riel <riel@redhat.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Diffstat (limited to 'drivers/cpuidle')
-rw-r--r--drivers/cpuidle/cpuidle.c2
-rw-r--r--drivers/cpuidle/governors/menu.c2
2 files changed, 2 insertions, 2 deletions
diff --git a/drivers/cpuidle/cpuidle.c b/drivers/cpuidle/cpuidle.c
index 8df53dd8dbe1..fb4a7dd57f94 100644
--- a/drivers/cpuidle/cpuidle.c
+++ b/drivers/cpuidle/cpuidle.c
@@ -70,7 +70,7 @@ int cpuidle_play_dead(void)
struct cpuidle_device *dev = __this_cpu_read(cpuidle_devices);
struct cpuidle_driver *drv = cpuidle_get_cpu_driver(dev);
int i, dead_state = -1;
- int power_usage = -1;
+ int power_usage = INT_MAX;
if (!drv)
return -ENODEV;
diff --git a/drivers/cpuidle/governors/menu.c b/drivers/cpuidle/governors/menu.c
index bd40b943b6db..20ea33afdda1 100644
--- a/drivers/cpuidle/governors/menu.c
+++ b/drivers/cpuidle/governors/menu.c
@@ -312,7 +312,7 @@ static int menu_select(struct cpuidle_driver *drv, struct cpuidle_device *dev)
{
struct menu_device *data = &__get_cpu_var(menu_devices);
int latency_req = pm_qos_request(PM_QOS_CPU_DMA_LATENCY);
- int power_usage = -1;
+ int power_usage = INT_MAX;
int i;
int multiplier;
struct timespec t;