]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
PM / Suspend: Off by one in pm_suspend()
authorDan Carpenter <dan.carpenter@oracle.com>
Wed, 21 Sep 2011 18:55:04 +0000 (20:55 +0200)
committerPaul Gortmaker <paul.gortmaker@windriver.com>
Fri, 17 Aug 2012 19:35:52 +0000 (15:35 -0400)
commit 528f7ce6e439edeac38f6b3f8561f1be129b5e91 upstream.

In enter_state() we use "state" as an offset for the pm_states[]
array.  The pm_states[] array only has PM_SUSPEND_MAX elements so
this test is off by one.

Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
kernel/power/suspend.c

index 56e7dbb8b996db295b4fc7cdf1b5f11a0409cb0c..7d4ae3b7b5b0ad0e1f327751b75a19562f1e4320 100644 (file)
@@ -297,7 +297,7 @@ int enter_state(suspend_state_t state)
  */
 int pm_suspend(suspend_state_t state)
 {
-       if (state > PM_SUSPEND_ON && state <= PM_SUSPEND_MAX)
+       if (state > PM_SUSPEND_ON && state < PM_SUSPEND_MAX)
                return enter_state(state);
        return -EINVAL;
 }