diff options
| author | Karthick S <skarthic@qti.qualcomm.com> | 2015-04-06 11:53:46 +0530 |
|---|---|---|
| committer | AnjaneeDevi Kapparapu <c_akappa@qti.qualcomm.com> | 2015-04-08 16:04:18 +0530 |
| commit | 634f9b0a64b5c0a37df340a8564995baf7d7b98b (patch) | |
| tree | 7261475ddcce5c078df0b90a3db2ed147467455a | |
| parent | 913a67cb8cdeda76093a6bfcdeb08a005ba1fad6 (diff) | |
qcacld-2.0: Free protection_fields_reset_timer
Free protection_fields_reset_timer in the beginning of peDeleteSession
function to avoid the null defreference caused due to the race condition
between peDeleteSession and pe_reset_protection_callback.
Change-Id: I1b83977bb3683d6dd87ec94a992ac51f39cd97db
CRs-Fixed: 815796
| -rw-r--r-- | CORE/MAC/src/pe/lim/limSession.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/CORE/MAC/src/pe/lim/limSession.c b/CORE/MAC/src/pe/lim/limSession.c index 25a3b171b8da..59d4b3e72a9d 100644 --- a/CORE/MAC/src/pe/lim/limSession.c +++ b/CORE/MAC/src/pe/lim/limSession.c @@ -587,6 +587,11 @@ void peDeleteSession(tpAniSirGlobal pMac, tpPESession psessionEntry) } } + if (LIM_IS_AP_ROLE(psessionEntry)) { + vos_timer_stop(&psessionEntry->protection_fields_reset_timer); + vos_timer_destroy(&psessionEntry->protection_fields_reset_timer); + } + #if defined (WLAN_FEATURE_VOWIFI_11R) /* Delete FT related information */ limFTCleanup(pMac, psessionEntry); @@ -756,11 +761,6 @@ void peDeleteSession(tpAniSirGlobal pMac, tpPESession psessionEntry) } #endif - if (LIM_IS_AP_ROLE(psessionEntry)) { - vos_timer_stop(&psessionEntry->protection_fields_reset_timer); - vos_timer_destroy(&psessionEntry->protection_fields_reset_timer); - } - psessionEntry->valid = FALSE; return; } |
