aboutsummaryrefslogtreecommitdiffstats
path: root/kernel/power/main.c
diff options
context:
space:
mode:
authorStephen Hemminger <shemminger@osdl.org>2006-12-06 23:34:35 -0500
committerLinus Torvalds <torvalds@woody.osdl.org>2006-12-07 11:39:28 -0500
commita6d70980602e6f1869ebcdcbfaf55a0a5941583e (patch)
treeb7e9b5f457eb7fe91fbbdbe978a50493da862cf2 /kernel/power/main.c
parent3eb1b3a40722cbb46631db373af66d13d1e7ac81 (diff)
[PATCH] convert pm_sem to a mutex
The power management semaphore is only used as mutex, so convert it. [akpm@osdl.org: fix rotten bug] Signed-off-by: Stephen Hemminger <shemminger@osdl.org> Acked-by: Ingo Molnar <mingo@elte.hu> Acked-by: Pavel Machek <pavel@ucw.cz> Cc: "Rafael J. Wysocki" <rjw@sisk.pl> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'kernel/power/main.c')
-rw-r--r--kernel/power/main.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/kernel/power/main.c b/kernel/power/main.c
index 6096c71b182b..751157b7897e 100644
--- a/kernel/power/main.c
+++ b/kernel/power/main.c
@@ -25,7 +25,7 @@
25/*This is just an arbitrary number */ 25/*This is just an arbitrary number */
26#define FREE_PAGE_NUMBER (100) 26#define FREE_PAGE_NUMBER (100)
27 27
28DECLARE_MUTEX(pm_sem); 28DEFINE_MUTEX(pm_mutex);
29 29
30struct pm_ops *pm_ops; 30struct pm_ops *pm_ops;
31suspend_disk_method_t pm_disk_mode = PM_DISK_SHUTDOWN; 31suspend_disk_method_t pm_disk_mode = PM_DISK_SHUTDOWN;
@@ -37,9 +37,9 @@ suspend_disk_method_t pm_disk_mode = PM_DISK_SHUTDOWN;
37 37
38void pm_set_ops(struct pm_ops * ops) 38void pm_set_ops(struct pm_ops * ops)
39{ 39{
40 down(&pm_sem); 40 mutex_lock(&pm_mutex);
41 pm_ops = ops; 41 pm_ops = ops;
42 up(&pm_sem); 42 mutex_unlock(&pm_mutex);
43} 43}
44 44
45 45
@@ -183,7 +183,7 @@ static int enter_state(suspend_state_t state)
183 183
184 if (!valid_state(state)) 184 if (!valid_state(state))
185 return -ENODEV; 185 return -ENODEV;
186 if (down_trylock(&pm_sem)) 186 if (!mutex_trylock(&pm_mutex))
187 return -EBUSY; 187 return -EBUSY;
188 188
189 if (state == PM_SUSPEND_DISK) { 189 if (state == PM_SUSPEND_DISK) {
@@ -201,7 +201,7 @@ static int enter_state(suspend_state_t state)
201 pr_debug("PM: Finishing wakeup.\n"); 201 pr_debug("PM: Finishing wakeup.\n");
202 suspend_finish(state); 202 suspend_finish(state);
203 Unlock: 203 Unlock:
204 up(&pm_sem); 204 mutex_unlock(&pm_mutex);
205 return error; 205 return error;
206} 206}
207 207