diff options
author | Song Shuai <songshuaishuai@tinylab.org> | 2024-06-26 10:33:16 +0800 |
---|---|---|
committer | Palmer Dabbelt <palmer@rivosinc.com> | 2024-07-03 13:11:30 -0700 |
commit | c562ba719df570c986caf0941fea2449150bcbc4 (patch) | |
tree | c58aef9a875ebb4a1b41b970b9938ffa5039b0b7 /tools/testing/selftests/net/af_unix/unix_connect.c | |
parent | 393da6cbb2ff89aadc47683a85269f913aa1c139 (diff) |
riscv: kexec: Avoid deadlock in kexec crash path
If the kexec crash code is called in the interrupt context, the
machine_kexec_mask_interrupts() function will trigger a deadlock while
trying to acquire the irqdesc spinlock and then deactivate irqchip in
irq_set_irqchip_state() function.
Unlike arm64, riscv only requires irq_eoi handler to complete EOI and
keeping irq_set_irqchip_state() will only leave this possible deadlock
without any use. So we simply remove it.
Link: https://lore.kernel.org/linux-riscv/20231208111015.173237-1-songshuaishuai@tinylab.org/
Fixes: b17d19a5314a ("riscv: kexec: Fixup irq controller broken in kexec crash path")
Signed-off-by: Song Shuai <songshuaishuai@tinylab.org>
Reviewed-by: Ryo Takakura <takakura@valinux.co.jp>
Link: https://lore.kernel.org/r/20240626023316.539971-1-songshuaishuai@tinylab.org
Signed-off-by: Palmer Dabbelt <palmer@rivosinc.com>
Diffstat (limited to 'tools/testing/selftests/net/af_unix/unix_connect.c')
0 files changed, 0 insertions, 0 deletions