wlan: Check for WatchDog reset status during SAP queue selection
Check for the WatchDog reset status during SAP queue selection request,
If WD reset in progress, then return the Best Effort queue index.
Else derive queue index based on the current session parameter and
return.
This avoids any access to the internal data structure during
reset.
Change-Id: Icd12b751f1b4122c054aacfcc9a20fe5a33b49c8
CRs-Fixed: 826355
diff --git a/CORE/HDD/src/wlan_hdd_wmm.c b/CORE/HDD/src/wlan_hdd_wmm.c
index 084eda9..6287279 100644
--- a/CORE/HDD/src/wlan_hdd_wmm.c
+++ b/CORE/HDD/src/wlan_hdd_wmm.c
@@ -2087,6 +2087,14 @@
v_U8_t *pSTAId = (v_U8_t *)(((v_U8_t *)(skb->data)) - 1);
v_CONTEXT_t pVosContext = ( WLAN_HDD_GET_CTX(pAdapter))->pvosContext;
ptSapContext pSapCtx = NULL;
+
+ if (vos_is_logp_in_progress(VOS_MODULE_ID_HDD, NULL)) {
+ VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_WARN,
+ FL("called during WDReset"));
+ skb->priority = SME_QOS_WMM_UP_BE;
+ return HDD_LINUX_AC_BE;
+ }
+
pSapCtx = VOS_GET_SAP_CB(pVosContext);
if(pSapCtx == NULL){
VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_ERROR,