mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/
synced 2026-11-08 18:57:22 +00:00
rcu: Remove local_irq_save/restore() in rcu_preempt_deferred_qs_handler()
[ Upstream commit42d590d100] The per-CPU rcu_data structure's ->defer_qs_iw field is initialized by IRQ_WORK_INIT_HARD(), which means that the subsequent invocation of rcu_preempt_deferred_qs_handler() will always be executed with interrupts disabled. This commit therefore removes the local_irq_save/restore() operations from rcu_preempt_deferred_qs_handler() and adds a call to lockdep_assert_irqs_disabled() in order to enable lockdep to diagnose mistaken invocations of this function from interrupts-enabled code. Signed-off-by: Zqiang <qiang.zhang@linux.dev> Signed-off-by: Paul E. McKenney <paulmck@kernel.org> Stable-dep-of:d41e37f26b("rcu: Fix rcu_read_unlock() deadloop due to softirq") Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
parent
24d44e0f05
commit
586a5effe5
1 changed files with 1 additions and 4 deletions
Loading…
Add table
Add a link
Reference in a new issue