diff options
| -rw-r--r-- | kernel/rcutree_plugin.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/kernel/rcutree_plugin.h b/kernel/rcutree_plugin.h index f6e5ec2932b4..43dba2d798ac 100644 --- a/kernel/rcutree_plugin.h +++ b/kernel/rcutree_plugin.h | |||
| @@ -2366,10 +2366,11 @@ static int rcu_nocb_kthread(void *arg) | |||
| 2366 | for (;;) { | 2366 | for (;;) { |
| 2367 | /* If not polling, wait for next batch of callbacks. */ | 2367 | /* If not polling, wait for next batch of callbacks. */ |
| 2368 | if (!rcu_nocb_poll) | 2368 | if (!rcu_nocb_poll) |
| 2369 | wait_event(rdp->nocb_wq, rdp->nocb_head); | 2369 | wait_event_interruptible(rdp->nocb_wq, rdp->nocb_head); |
| 2370 | list = ACCESS_ONCE(rdp->nocb_head); | 2370 | list = ACCESS_ONCE(rdp->nocb_head); |
| 2371 | if (!list) { | 2371 | if (!list) { |
| 2372 | schedule_timeout_interruptible(1); | 2372 | schedule_timeout_interruptible(1); |
| 2373 | flush_signals(current); | ||
| 2373 | continue; | 2374 | continue; |
| 2374 | } | 2375 | } |
| 2375 | 2376 | ||
