36 lines
1.1 KiB
Diff
36 lines
1.1 KiB
Diff
From: Ben Hutchings <ben@decadent.org.uk>
|
|
Date: Thu, 31 May 2012 02:58:44 +0100
|
|
Subject: [PATCH] Revert "workqueue: skip nr_running sanity check in
|
|
worker_enter_idle() if trustee is active"
|
|
|
|
This reverts commit 5d79c6f64a904afc92a329f80abe693e3ae105fe.
|
|
It conflicts with, and appears to be unnecessary for, the PREEMPT_RT
|
|
series.
|
|
---
|
|
kernel/workqueue.c | 9 ++-------
|
|
1 file changed, 2 insertions(+), 7 deletions(-)
|
|
|
|
diff --git a/kernel/workqueue.c b/kernel/workqueue.c
|
|
index 7947e16..bb425b1 100644
|
|
--- a/kernel/workqueue.c
|
|
+++ b/kernel/workqueue.c
|
|
@@ -1215,13 +1215,8 @@ static void worker_enter_idle(struct worker *worker)
|
|
} else
|
|
wake_up_all(&gcwq->trustee_wait);
|
|
|
|
- /*
|
|
- * Sanity check nr_running. Because trustee releases gcwq->lock
|
|
- * between setting %WORKER_ROGUE and zapping nr_running, the
|
|
- * warning may trigger spuriously. Check iff trustee is idle.
|
|
- */
|
|
- WARN_ON_ONCE(gcwq->trustee_state == TRUSTEE_DONE &&
|
|
- gcwq->nr_workers == gcwq->nr_idle &&
|
|
+ /* sanity check nr_running */
|
|
+ WARN_ON_ONCE(gcwq->nr_workers == gcwq->nr_idle &&
|
|
atomic_read(get_gcwq_nr_running(gcwq->cpu)));
|
|
}
|
|
|
|
--
|
|
1.7.10
|
|
|