2018-08-27 14:32:32 +00:00
|
|
|
From: Thomas Gleixner <tglx@linutronix.de>
|
2019-04-08 23:49:20 +00:00
|
|
|
Date: Fri, 8 Jul 2011 16:35:35 +0200
|
2019-11-25 00:04:39 +00:00
|
|
|
Subject: [PATCH 177/290] fs/epoll: Do not disable preemption on RT
|
|
|
|
Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=723ebe37abb09e4f0d3f367217307266d12f04da
|
2018-08-27 14:32:32 +00:00
|
|
|
|
|
|
|
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>
|
|
|
|
---
|
2019-04-08 23:49:20 +00:00
|
|
|
fs/eventpoll.c | 4 ++--
|
2018-08-27 14:32:32 +00:00
|
|
|
1 file changed, 2 insertions(+), 2 deletions(-)
|
|
|
|
|
2019-04-08 23:49:20 +00:00
|
|
|
diff --git a/fs/eventpoll.c b/fs/eventpoll.c
|
|
|
|
index 58f48ea0db23..a41120a34e6d 100644
|
2018-08-27 14:32:32 +00:00
|
|
|
--- a/fs/eventpoll.c
|
|
|
|
+++ b/fs/eventpoll.c
|
2019-04-08 23:49:20 +00:00
|
|
|
@@ -571,12 +571,12 @@ static int ep_poll_wakeup_proc(void *priv, void *cookie, int call_nests)
|
2018-08-27 14:32:32 +00:00
|
|
|
|
|
|
|
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();
|
|
|
|
}
|
|
|
|
|
|
|
|
#else
|