diff options
| author | Kunwu Chan <kunwu.chan@gmail.com> | 2026-09-14 17:34:17 +0800 |
|---|---|---|
| committer | Paul E. McKenney <paulmck@kernel.org> | 2026-10-12 16:50:40 -0700 |
| commit | 13fbbaefb0ac4e4a37e357e0083ca67e84302cd6 (patch) | |
| tree | b8895dd8bdc272026592c7dd8d8f40df73d9f23b /scripts | |
| parent | 8d99291b14f1cb441279ba800ad7535e0e760b63 (diff) | |
| download | linux-13fbbaefb0ac4e4a37e357e0083ca67e84302cd6.tar.gz linux-13fbbaefb0ac4e4a37e357e0083ca67e84302cd6.zip | |
srcutree: Preserve IRQ state in synchronize_srcu_atomic() callchain
synchronize_srcu_atomic() may be called with interrupts disabled, but
its callchain uses raw_spin_lock_irq_rcu_node() /
raw_spin_unlock_irq_rcu_node(), which unconditionally enables
interrupts on unlock. This can incorrectly change the caller's IRQ
state.
Use the irqsave/irqrestore variants for the locks in this callchain
so that the caller's IRQ state is preserved.
Co-developed-by: Zqiang <qiang.zhang@linux.dev>
Signed-off-by: Zqiang <qiang.zhang@linux.dev>
Signed-off-by: Kunwu Chan <kunwu.chan@gmail.com>
Acked-by: Boqun Feng <boqun@kernel.org>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
Diffstat (limited to 'scripts')
0 files changed, 0 insertions, 0 deletions
