diff options
| author | Baochen Qiang <[email protected]> | 2024-01-11 15:56:57 +0200 |
|---|---|---|
| committer | Kalle Valo <[email protected]> | 2024-01-14 16:59:08 +0200 |
| commit | cf2df0080bd59cb97a1519ddefaf59788febdaa5 (patch) | |
| tree | 3b04ecd32cd376aa4a52756d9a792828b96eda1e /tools/perf/scripts/python/syscall-counts.py | |
| parent | 7004bdceef605e5c1c5ab4aaf282002ad7523ddd (diff) | |
wifi: ath11k: fix a possible dead lock caused by ab->base_lock
spin_lock()/spin_unlock() are used in ath11k_reg_chan_list_event() to
acquire/release ab->base_lock. For now this is safe because that
function is only called in soft IRQ context.
But ath11k_reg_chan_list_event() will be called from process
context in an upcoming patch, and this can result in a deadlock if
ab->base_lock is acquired in process context and then soft IRQ occurs
on the same CPU and tries to acquire that lock.
Fix it by using spin_lock_bh() and spin_unlock_bh() instead.
Tested-on: WCN6855 hw2.0 PCI WLAN.HSP.1.1-03125-QCAHSPSWPL_V1_V2_SILICONZ_LITE-3.6510.23
Fixes: 69a0fcf8a9f2 ("ath11k: Avoid reg rules update during firmware recovery")
Signed-off-by: Baochen Qiang <[email protected]>
Signed-off-by: Wen Gong <[email protected]>
Acked-by: Jeff Johnson <[email protected]>
Signed-off-by: Kalle Valo <[email protected]>
Link: https://msgid.link/[email protected]
Diffstat (limited to 'tools/perf/scripts/python/syscall-counts.py')
0 files changed, 0 insertions, 0 deletions