| From e63cf3569f9135e10ee055a63a7dcbeeb00c1678 Mon Sep 17 00:00:00 2001 |
| From: "Rafael J. Wysocki" <rjw@sisk.pl> |
| Date: Mon, 13 Feb 2012 16:29:24 +0100 |
| Subject: PM / Sleep: Make enter_state() in kernel/power/suspend.c static |
| |
| The enter_state() function in kernel/power/suspend.c should be |
| static and state_store() in kernel/power/suspend.c should call |
| pm_suspend() instead of it, so make that happen (which also reduces |
| code duplication related to suspend statistics). |
| |
| Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl> |
| Acked-by: Srivatsa S. Bhat <srivatsa.bhat@linux.vnet.ibm.com> |
| (cherry picked from commit 93e1ee43a72b11e1b50aab87046c131a836a4456) |
| |
| Signed-off-by: Simon Horman <horms@verge.net.au> |
| --- |
| kernel/power/main.c | 8 +++----- |
| kernel/power/power.h | 2 -- |
| kernel/power/suspend.c | 2 +- |
| 3 files changed, 4 insertions(+), 8 deletions(-) |
| |
| --- a/kernel/power/main.c |
| +++ b/kernel/power/main.c |
| @@ -291,12 +291,10 @@ static ssize_t state_store(struct kobjec |
| |
| #ifdef CONFIG_SUSPEND |
| for (s = &pm_states[state]; state < PM_SUSPEND_MAX; s++, state++) { |
| - if (*s && len == strlen(*s) && !strncmp(buf, *s, len)) |
| + if (*s && len == strlen(*s) && !strncmp(buf, *s, len)) { |
| + error = pm_suspend(state); |
| break; |
| - } |
| - if (state < PM_SUSPEND_MAX && *s) { |
| - error = enter_state(state); |
| - suspend_stats_update(error); |
| + } |
| } |
| #endif |
| |
| --- a/kernel/power/power.h |
| +++ b/kernel/power/power.h |
| @@ -177,13 +177,11 @@ extern const char *const pm_states[]; |
| |
| extern bool valid_state(suspend_state_t state); |
| extern int suspend_devices_and_enter(suspend_state_t state); |
| -extern int enter_state(suspend_state_t state); |
| #else /* !CONFIG_SUSPEND */ |
| static inline int suspend_devices_and_enter(suspend_state_t state) |
| { |
| return -ENOSYS; |
| } |
| -static inline int enter_state(suspend_state_t state) { return -ENOSYS; } |
| static inline bool valid_state(suspend_state_t state) { return false; } |
| #endif /* !CONFIG_SUSPEND */ |
| |
| --- a/kernel/power/suspend.c |
| +++ b/kernel/power/suspend.c |
| @@ -275,7 +275,7 @@ static void suspend_finish(void) |
| * Fail if that's not the case. Otherwise, prepare for system suspend, make the |
| * system enter the given sleep state and clean up after wakeup. |
| */ |
| -int enter_state(suspend_state_t state) |
| +static int enter_state(suspend_state_t state) |
| { |
| int error; |
| |