mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-27 22:24:11 +08:00
rcu: avoid pointless blocked-task warnings
If the RCU callback-processing kthread has nothing to do, it parks in a wait_event(). If RCU remains idle for more than two minutes, the kernel complains about this. This commit changes from wait_event() to wait_event_interruptible() to prevent the kernel from complaining just because RCU is idle. Reported-by: Russell King <rmk+kernel@arm.linux.org.uk> Signed-off-by: Paul E. McKenney <paul.mckenney@linaro.org> Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com> Tested-by: Thomas Weber <weber@corscience.de> Tested-by: Russell King <rmk+kernel@arm.linux.org.uk>
This commit is contained in:
parent
c072a388d5
commit
b24efdfdf6
@ -189,7 +189,8 @@ static int rcu_kthread(void *arg)
|
|||||||
unsigned long flags;
|
unsigned long flags;
|
||||||
|
|
||||||
for (;;) {
|
for (;;) {
|
||||||
wait_event(rcu_kthread_wq, have_rcu_kthread_work != 0);
|
wait_event_interruptible(rcu_kthread_wq,
|
||||||
|
have_rcu_kthread_work != 0);
|
||||||
morework = rcu_boost();
|
morework = rcu_boost();
|
||||||
local_irq_save(flags);
|
local_irq_save(flags);
|
||||||
work = have_rcu_kthread_work;
|
work = have_rcu_kthread_work;
|
||||||
|
Loading…
Reference in New Issue
Block a user