37 lines
1.1 KiB
Diff
37 lines
1.1 KiB
Diff
From 01d987295e686f337cdbe95a3a66cb00ef12992e Mon Sep 17 00:00:00 2001
|
|
From: Thomas Gleixner <tglx@linutronix.de>
|
|
Date: Fri, 8 Jul 2011 16:35:35 +0200
|
|
Subject: [PATCH 209/365] fs/epoll: Do not disable preemption on RT
|
|
|
|
ep_call_nested() takes a sleeping lock so we can't disable preemption.
|
|
The light version is enough since ep_call_nested() doesn't mind beeing
|
|
invoked twice on the same CPU.
|
|
|
|
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
|
|
---
|
|
fs/eventpoll.c | 4 ++--
|
|
1 file changed, 2 insertions(+), 2 deletions(-)
|
|
|
|
diff --git a/fs/eventpoll.c b/fs/eventpoll.c
|
|
index bb3f4be68fff..f44567deb93a 100644
|
|
--- a/fs/eventpoll.c
|
|
+++ b/fs/eventpoll.c
|
|
@@ -509,12 +509,12 @@ static int ep_poll_wakeup_proc(void *priv, void *cookie, int call_nests)
|
|
*/
|
|
static void ep_poll_safewake(wait_queue_head_t *wq)
|
|
{
|
|
- int this_cpu = get_cpu();
|
|
+ int this_cpu = get_cpu_light();
|
|
|
|
ep_call_nested(&poll_safewake_ncalls, EP_MAX_NESTS,
|
|
ep_poll_wakeup_proc, NULL, wq, (void *) (long) this_cpu);
|
|
|
|
- put_cpu();
|
|
+ put_cpu_light();
|
|
}
|
|
|
|
static void ep_remove_wait_queue(struct eppoll_entry *pwq)
|
|
--
|
|
2.28.0
|
|
|