diff options
author | Namhyung Kim <namhyung@gmail.com> | 2010-08-22 10:19:43 -0400 |
---|---|---|
committer | Tejun Heo <tj@kernel.org> | 2010-08-23 05:37:49 -0400 |
commit | 972fa1c5316d18c8297123e08e9b6930ca34f888 (patch) | |
tree | b96c34cb7ac493a80d959db6b361d2e87e854e06 /kernel/workqueue.c | |
parent | 06bd6ebffae36d3b105677598c48e8bd0a10b205 (diff) |
workqueue: mark lock acquisition on worker_maybe_bind_and_lock()
worker_maybe_bind_and_lock() actually grabs gcwq->lock but was missing proper
annotation. Add it. So this patch will remove following sparse warnings:
kernel/workqueue.c:1214:13: warning: context imbalance in 'worker_maybe_bind_and_lock' - wrong count at exit
arch/x86/include/asm/irqflags.h:44:9: warning: context imbalance in 'worker_rebind_fn' - unexpected unlock
kernel/workqueue.c:1991:17: warning: context imbalance in 'rescuer_thread' - unexpected unlock
Signed-off-by: Namhyung Kim <namhyung@gmail.com>
Signed-off-by: Tejun Heo <tj@kernel.org>
Diffstat (limited to 'kernel/workqueue.c')
-rw-r--r-- | kernel/workqueue.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/kernel/workqueue.c b/kernel/workqueue.c index 7415f27a8aa7..cc3456f96c56 100644 --- a/kernel/workqueue.c +++ b/kernel/workqueue.c | |||
@@ -1212,6 +1212,7 @@ static void worker_leave_idle(struct worker *worker) | |||
1212 | * bound), %false if offline. | 1212 | * bound), %false if offline. |
1213 | */ | 1213 | */ |
1214 | static bool worker_maybe_bind_and_lock(struct worker *worker) | 1214 | static bool worker_maybe_bind_and_lock(struct worker *worker) |
1215 | __acquires(&gcwq->lock) | ||
1215 | { | 1216 | { |
1216 | struct global_cwq *gcwq = worker->gcwq; | 1217 | struct global_cwq *gcwq = worker->gcwq; |
1217 | struct task_struct *task = worker->task; | 1218 | struct task_struct *task = worker->task; |