mwifiex: remove useless 'mwifiex_lock'
authorBrian Norris <briannorris@chromium.org>
Fri, 12 May 2017 16:42:04 +0000 (09:42 -0700)
committerKalle Valo <kvalo@codeaurora.org>
Fri, 19 May 2017 06:01:57 +0000 (09:01 +0300)
If mwifiex_shutdown_drv() is racing with another mwifiex_shutdown_drv(),
we *really* have problems. Kill the lock.

Signed-off-by: Brian Norris <briannorris@chromium.org>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
drivers/net/wireless/marvell/mwifiex/init.c
drivers/net/wireless/marvell/mwifiex/main.h

index 2ada202..2bff87b 100644 (file)
@@ -439,7 +439,6 @@ int mwifiex_init_lock_list(struct mwifiex_adapter *adapter)
        struct mwifiex_private *priv;
        s32 i, j;
 
-       spin_lock_init(&adapter->mwifiex_lock);
        spin_lock_init(&adapter->int_lock);
        spin_lock_init(&adapter->main_proc_lock);
        spin_lock_init(&adapter->mwifiex_cmd_lock);
@@ -693,11 +692,8 @@ mwifiex_shutdown_drv(struct mwifiex_adapter *adapter)
 
        spin_unlock_irqrestore(&adapter->rx_proc_lock, flags);
 
-       spin_lock(&adapter->mwifiex_lock);
-
        mwifiex_adapter_cleanup(adapter);
 
-       spin_unlock(&adapter->mwifiex_lock);
        adapter->hw_status = MWIFIEX_HW_STATUS_NOT_READY;
 }
 
index 6e76b30..c1d96c6 100644 (file)
@@ -870,8 +870,6 @@ struct mwifiex_adapter {
        bool rx_locked;
        bool main_locked;
        struct mwifiex_bss_prio_tbl bss_prio_tbl[MWIFIEX_MAX_BSS_NUM];
-       /* spin lock for init/shutdown */
-       spinlock_t mwifiex_lock;
        /* spin lock for main process */
        spinlock_t main_proc_lock;
        u32 mwifiex_processing;