Avinash Patil <[email protected]> writes:

> From: Zhaoyang Liu <[email protected]>
>
> This patch does away with spinlock in
> mwifiex_wmm_get_highest_priolist_ptr in order to improve TP.
>
> Signed-off-by: Zhaoyang Liu <[email protected]>
> Signed-off-by: Shengzhen Li <[email protected]>
> Signed-off-by: Cathy Luo <[email protected]>
> Signed-off-by: Amitkumar Karwar <[email protected]>
> Signed-off-by: Avinash Patil <[email protected]>

[...]

> @@ -727,6 +730,25 @@ static int mwifiex_deinit_priv_params(struct 
> mwifiex_private *priv)
>       }
>  
>       mwifiex_deauthenticate(priv, NULL);
> +
> +     spin_lock_irqsave(&adapter->main_proc_lock, flags);
> +     adapter->main_locked = true;
> +     if (adapter->mwifiex_processing) {
> +             spin_unlock_irqrestore(&adapter->main_proc_lock, flags);
> +             flush_workqueue(adapter->workqueue);
> +     } else {
> +             spin_unlock_irqrestore(&adapter->main_proc_lock, flags);
> +     }
> +
> +     spin_lock_irqsave(&adapter->rx_proc_lock, flags);
> +     adapter->rx_locked = true;
> +     if (adapter->rx_processing) {
> +             spin_unlock_irqrestore(&adapter->rx_proc_lock, flags);
> +             flush_workqueue(adapter->rx_workqueue);
> +     } else {
> +             spin_unlock_irqrestore(&adapter->rx_proc_lock, flags);
> +     }

And here the horrible hack just grows to other functions.

-- 
Kalle Valo
--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to