]> git.baikalelectronics.ru Git - kernel.git/commit
rcu: Clear ->rcu_read_unlock_special only once
authorLai Jiangshan <laijs@linux.alibaba.com>
Fri, 1 Nov 2019 12:06:21 +0000 (05:06 -0700)
committerPaul E. McKenney <paulmck@kernel.org>
Fri, 24 Jan 2020 18:27:33 +0000 (10:27 -0800)
commitcdc6c8bf60d4b4e4af1af7b16d8bb2a2251bb93d
treee3be4d9999576967141e14a0ade78330474d36e1
parentcb6129737c57be6f2c252c90ef51af7409b0a6d9
rcu: Clear ->rcu_read_unlock_special only once

In rcu_preempt_deferred_qs_irqrestore(), ->rcu_read_unlock_special is
cleared one piece at a time.  Given that the "if" statements in this
function use the copy in "special", this commit removes the clearing
of the individual pieces in favor of clearing ->rcu_read_unlock_special
in one go just after it has been determined to be non-zero.

Signed-off-by: Lai Jiangshan <laijs@linux.alibaba.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
kernel/rcu/tree_plugin.h