Prima: Donot hold mutex while cancelling the workqueue
Holding mutex in tdls implicit_setup work queue and
while cancelling it is leading to deadlock.
So avoid holding mutex while cancelling the workqueue.
CRs-Fixed: 802301
Change-Id: I78c301e3ca4c3e8ba36e2ab86e2db58f827689c4
diff --git a/CORE/HDD/src/wlan_hdd_main.c b/CORE/HDD/src/wlan_hdd_main.c
index bb026b6..a690f06 100755
--- a/CORE/HDD/src/wlan_hdd_main.c
+++ b/CORE/HDD/src/wlan_hdd_main.c
@@ -7087,7 +7087,7 @@
{
#ifdef FEATURE_WLAN_TDLS
mutex_lock(&pHddCtx->tdls_lock);
- wlan_hdd_tdls_exit(pAdapter);
+ wlan_hdd_tdls_exit(pAdapter, TRUE);
mutex_unlock(&pHddCtx->tdls_lock);
#endif
if (pWextState->roamProfile.BSSType == eCSR_BSS_TYPE_START_IBSS)
@@ -7409,7 +7409,7 @@
#ifdef FEATURE_WLAN_TDLS
mutex_lock(&pHddCtx->tdls_lock);
- wlan_hdd_tdls_exit(pAdapter);
+ wlan_hdd_tdls_exit(pAdapter, TRUE);
mutex_unlock(&pHddCtx->tdls_lock);
#endif
status = hdd_get_next_adapter ( pHddCtx, pAdapterNode, &pNext );