summaryrefslogtreecommitdiffstats
path: root/kernel
diff options
context:
space:
mode:
authorThomas Gleixner2011-12-01 00:04:00 +0100
committerIngo Molnar2012-03-01 10:28:04 +0100
commit63b2001169e75cd71e917ec953fdab572e3f944a (patch)
tree3338725751540571a7d490b252f1b450554a6847 /kernel
parentsched/rt: Document scheduler related skip-resched-check sites (diff)
downloadkernel-qcow2-linux-63b2001169e75cd71e917ec953fdab572e3f944a.tar.gz
kernel-qcow2-linux-63b2001169e75cd71e917ec953fdab572e3f944a.tar.xz
kernel-qcow2-linux-63b2001169e75cd71e917ec953fdab572e3f944a.zip
sched/wait: Add __wake_up_all_locked() API
For code which protects the waitqueue itself with another lock it makes no sense to acquire the waitqueue lock for wakeup all. Provide __wake_up_all_locked(). This is an optimization on the vanilla kernel (to be used by the PCI code) and an important semantic distinction on -rt. Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Acked-by: Peter Zijlstra <a.p.zijlstra@chello.nl> Link: http://lkml.kernel.org/n/tip-ux6m4b8jonb9inx8xafh77ds@git.kernel.org Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'kernel')
-rw-r--r--kernel/sched/core.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/kernel/sched/core.c b/kernel/sched/core.c
index 643cc37fcb23..820f7453fda9 100644
--- a/kernel/sched/core.c
+++ b/kernel/sched/core.c
@@ -3418,9 +3418,9 @@ EXPORT_SYMBOL(__wake_up);
/*
* Same as __wake_up but called with the spinlock in wait_queue_head_t held.
*/
-void __wake_up_locked(wait_queue_head_t *q, unsigned int mode)
+void __wake_up_locked(wait_queue_head_t *q, unsigned int mode, int nr)
{
- __wake_up_common(q, mode, 1, 0, NULL);
+ __wake_up_common(q, mode, nr, 0, NULL);
}
EXPORT_SYMBOL_GPL(__wake_up_locked);