mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-24 12:44:11 +08:00
ksoftirqd: Use new cond_resched_rcu_qs() function
Simplify run_ksoftirqd() by using the new cond_resched_rcu_qs() function that conditionally reschedules, but unconditionally supplies an RCU quiescent state. This commit is separate from the previous commit by Calvin Owens because Calvin's approach can be backported, while this commit cannot be. The reason that this commit cannot be backported is that cond_resched_rcu_qs() does not always provide the needed quiescent state in earlier kernels. Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
This commit is contained in:
parent
28423ad283
commit
60479676eb
@ -657,12 +657,7 @@ static void run_ksoftirqd(unsigned int cpu)
|
||||
*/
|
||||
__do_softirq();
|
||||
local_irq_enable();
|
||||
cond_resched();
|
||||
|
||||
preempt_disable();
|
||||
rcu_note_context_switch();
|
||||
preempt_enable();
|
||||
|
||||
cond_resched_rcu_qs();
|
||||
return;
|
||||
}
|
||||
local_irq_enable();
|
||||
|
Loading…
Reference in New Issue
Block a user