diff options
| author | Tushnim Bhattacharyya <tushnimb@qca.qualcomm.com> | 2015-05-08 14:54:56 -0700 |
|---|---|---|
| committer | AnjaneeDevi Kapparapu <c_akappa@qti.qualcomm.com> | 2015-05-11 19:01:08 +0530 |
| commit | 7a43d52c6547dea34562a1204eea95d01549e7ae (patch) | |
| tree | d1e12be9cac2ab59d76fe7fb2616a8aa44c879e8 | |
| parent | 44eb61882e3efdda6f4ce92713018f6070eae39a (diff) | |
qcacld 2.0: set rem_on_chan_ready_event if the ROC fails
propagation from prima/pronto
If the ROC fails, rem_on_chan_ready_event is not set,
which might lead to timeout. To address this set the
rem_on_chan_ready_event completion variable when the
ROC fails.
Change-Id: Ic84fcfefb49deabc40af9f3092372798f0d5cca8
CRs-Fixed: 791169
| -rw-r--r-- | CORE/HDD/src/wlan_hdd_p2p.c | 2 | ||||
| -rw-r--r-- | CORE/SME/src/p2p/p2p_Api.c | 4 |
2 files changed, 5 insertions, 1 deletions
diff --git a/CORE/HDD/src/wlan_hdd_p2p.c b/CORE/HDD/src/wlan_hdd_p2p.c index 7b968a2da699..ecbe7aee6691 100644 --- a/CORE/HDD/src/wlan_hdd_p2p.c +++ b/CORE/HDD/src/wlan_hdd_p2p.c @@ -296,6 +296,8 @@ wlan_hdd_remain_on_channel_callback(tHalHandle hHal, void* pCtx, } vos_mem_free( pRemainChanCtx ); complete(&pAdapter->cancel_rem_on_chan_var); + if (eHAL_STATUS_SUCCESS != status) + complete(&pAdapter->rem_on_chan_ready_event); mutex_lock(&cfgState->remain_on_chan_ctx_lock); pAdapter->is_roc_inprogress = FALSE; mutex_unlock(&cfgState->remain_on_chan_ctx_lock); diff --git a/CORE/SME/src/p2p/p2p_Api.c b/CORE/SME/src/p2p/p2p_Api.c index e2a1bbba33c2..aed63d1973ca 100644 --- a/CORE/SME/src/p2p/p2p_Api.c +++ b/CORE/SME/src/p2p/p2p_Api.c @@ -111,6 +111,7 @@ eHalStatus sme_remainOnChnRsp( tpAniSirGlobal pMac, tANI_U8 *pMsg) tListElem *pEntry = NULL; tSmeCmd *pCommand = NULL; tANI_BOOLEAN fFound; + tSirSmeRsp *pRsp = (tSirSmeRsp *)pMsg; if (pMac->fP2pListenOffload) pEntry = csrLLPeekHead(&pMac->sme.smeScanCmdActiveList, LL_ACCESS_LOCK); @@ -124,7 +125,8 @@ eHalStatus sme_remainOnChnRsp( tpAniSirGlobal pMac, tANI_U8 *pMsg) remainOnChanCallback callback = pCommand->u.remainChlCmd.callback; /* process the msg */ if( callback ) - callback(pMac, pCommand->u.remainChlCmd.callbackCtx, 0); + callback(pMac, pCommand->u.remainChlCmd.callbackCtx, + pRsp->statusCode); if (pMac->fP2pListenOffload) { |
