diff options
author | Cyrill Gorcunov <gorcunov@gmail.com> | 2019-01-24 19:14:37 +0100 |
---|---|---|
committer | Paul E. McKenney <paulmck@linux.ibm.com> | 2019-03-26 22:37:49 +0100 |
commit | 18d7e40679ef574e428f893101be1c0035e95ee3 (patch) | |
tree | bf75bb044a0e0b708294a3f1b4253b65a022ff03 /kernel/rcu | |
parent | rcu: Avoid unnecessary softirq when system is idle (diff) | |
download | linux-18d7e40679ef574e428f893101be1c0035e95ee3.tar.xz linux-18d7e40679ef574e428f893101be1c0035e95ee3.zip |
rcu: rcu_qs -- Use raise_softirq_irqoff to not save irqs twice
The rcu_qs is disabling IRQs by self so no need to do the same in raise_softirq
but instead we can save some cycles using raise_softirq_irqoff directly.
CC: Paul E. McKenney <paulmck@linux.ibm.com>
Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@linux.ibm.com>
Diffstat (limited to 'kernel/rcu')
-rw-r--r-- | kernel/rcu/tiny.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/kernel/rcu/tiny.c b/kernel/rcu/tiny.c index 911bd9076d43..477b4eb44af5 100644 --- a/kernel/rcu/tiny.c +++ b/kernel/rcu/tiny.c @@ -52,7 +52,7 @@ void rcu_qs(void) local_irq_save(flags); if (rcu_ctrlblk.donetail != rcu_ctrlblk.curtail) { rcu_ctrlblk.donetail = rcu_ctrlblk.curtail; - raise_softirq(RCU_SOFTIRQ); + raise_softirq_irqoff(RCU_SOFTIRQ); } local_irq_restore(flags); } |