Arvind M | 8e87d85 | 2018-01-29 00:04:29 -0800 | [diff] [blame] | 1 | From 336d3aecf1375ef8585ccf3efdc946c08f264da3 Mon Sep 17 00:00:00 2001 |
Allen Martin | 685e0f8 | 2016-07-26 19:34:29 -0700 | [diff] [blame] | 2 | From: Thomas Gleixner <tglx@linutronix.de> |
| 3 | Date: Fri, 8 Jul 2011 16:35:35 +0200 |
Arvind M | 10268e7 | 2017-12-04 22:18:06 -0800 | [diff] [blame] | 4 | Subject: [PATCH 156/366] fs/epoll: Do not disable preemption on RT |
Allen Martin | 685e0f8 | 2016-07-26 19:34:29 -0700 | [diff] [blame] | 5 | |
| 6 | ep_call_nested() takes a sleeping lock so we can't disable preemption. |
| 7 | The light version is enough since ep_call_nested() doesn't mind beeing |
| 8 | invoked twice on the same CPU. |
| 9 | |
| 10 | Signed-off-by: Thomas Gleixner <tglx@linutronix.de> |
Allen Martin | 685e0f8 | 2016-07-26 19:34:29 -0700 | [diff] [blame] | 11 | --- |
| 12 | fs/eventpoll.c | 4 ++-- |
| 13 | 1 file changed, 2 insertions(+), 2 deletions(-) |
| 14 | |
| 15 | diff --git a/fs/eventpoll.c b/fs/eventpoll.c |
Ishan Mittal | b799826 | 2017-01-17 16:11:50 +0530 | [diff] [blame] | 16 | index 4c999ce..1a3de35 100644 |
Allen Martin | 685e0f8 | 2016-07-26 19:34:29 -0700 | [diff] [blame] | 17 | --- a/fs/eventpoll.c |
| 18 | +++ b/fs/eventpoll.c |
| 19 | @@ -506,12 +506,12 @@ static int ep_poll_wakeup_proc(void *priv, void *cookie, int call_nests) |
| 20 | */ |
| 21 | static void ep_poll_safewake(wait_queue_head_t *wq) |
| 22 | { |
| 23 | - int this_cpu = get_cpu(); |
| 24 | + int this_cpu = get_cpu_light(); |
| 25 | |
| 26 | ep_call_nested(&poll_safewake_ncalls, EP_MAX_NESTS, |
| 27 | ep_poll_wakeup_proc, NULL, wq, (void *) (long) this_cpu); |
| 28 | |
| 29 | - put_cpu(); |
| 30 | + put_cpu_light(); |
| 31 | } |
| 32 | |
| 33 | static void ep_remove_wait_queue(struct eppoll_entry *pwq) |
| 34 | -- |
Arvind M | 10268e7 | 2017-12-04 22:18:06 -0800 | [diff] [blame] | 35 | 1.9.1 |
Allen Martin | 685e0f8 | 2016-07-26 19:34:29 -0700 | [diff] [blame] | 36 | |