staging: ks7010: disable bh on tx_dev_lock
authorChengfeng Ye <dg573847474@gmail.com>
Tue, 26 Sep 2023 16:13:23 +0000 (16:13 +0000)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 5 Oct 2023 07:58:12 +0000 (09:58 +0200)
commit058cbee52ccd7be77e373d31a4f14670cfd32018
tree25d420166e854875d59000133599c966f128bea7
parenteb507641d0be6a4fb2f06cd7325953ba5e4f6c3e
staging: ks7010: disable bh on tx_dev_lock

As &priv->tx_dev.tx_dev_lock is also acquired by xmit callback which
could be call from timer under softirq context, use spin_lock_bh()
on it to prevent potential deadlock.

hostif_sme_work()
--> hostif_sme_set_pmksa()
--> hostif_mib_set_request()
--> ks_wlan_hw_tx()
--> spin_lock(&priv->tx_dev.tx_dev_lock)

ks_wlan_start_xmit()
--> hostif_data_request()
--> ks_wlan_hw_tx()
--> spin_lock(&priv->tx_dev.tx_dev_lock)

Signed-off-by: Chengfeng Ye <dg573847474@gmail.com>
Link: https://lore.kernel.org/r/20230926161323.41928-1-dg573847474@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/ks7010/ks7010_sdio.c