summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVarun Reddy Yeturu <vyeturu@qca.qualcomm.com>2014-08-16 16:18:46 -0700
committerAkash Patel <c_akashp@qca.qualcomm.com>2014-08-18 23:41:10 -0700
commit61310106281ee1ef2215837bbafee62749ada45a (patch)
tree040e27bfbcde607183b14ebd4d1f5ded5ddd4626
parent4bbc1874db8a9264e786cac9c2b1dcae06b945d1 (diff)
wlan: qcacld: Decrement active sessions while roaming
Decrement active sessions during roaming Change-Id: I6dc137a3942e88a1602ba04cbd3d67fcfadbf1a7 CRs-Fixed: 710606
-rw-r--r--CORE/HDD/src/wlan_hdd_assoc.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/CORE/HDD/src/wlan_hdd_assoc.c b/CORE/HDD/src/wlan_hdd_assoc.c
index 1bb4c40b5174..44982e6dbeac 100644
--- a/CORE/HDD/src/wlan_hdd_assoc.c
+++ b/CORE/HDD/src/wlan_hdd_assoc.c
@@ -1288,6 +1288,7 @@ static void hdd_SendReAssocEvent(struct net_device *dev,
v_U8_t *rspRsnIe = kmalloc(IW_GENERIC_IE_MAX, GFP_KERNEL);
tANI_U32 rspRsnLength = 0;
struct ieee80211_channel *chan;
+ hdd_context_t *pHddCtx = WLAN_HDD_GET_CTX(pAdapter);
if (!rspRsnIe) {
hddLog(LOGE, FL("Unable to allocate RSN IE"));
@@ -1314,6 +1315,15 @@ static void hdd_SendReAssocEvent(struct net_device *dev,
hddLog(LOG1, FL("AssocRsp is now at %02x%02x"),
(unsigned int)pFTAssocRsp[0], (unsigned int)pFTAssocRsp[1]);
+ /* Active session count is decremented upon disconnection, but during
+ * roaming, there is no disconnect indication and hence active session
+ * count is not decremented.
+ * After roaming is completed, active session count is incremented
+ * as a part of connect indication but effectively after roaming the
+ * active session count should still be the same and hence upon
+ * successful reassoc decrement the active session count here */
+ wlan_hdd_decr_active_session(pHddCtx, pAdapter->device_mode);
+
/* Send the Assoc Resp, the supplicant needs this for initial Auth */
len = pCsrRoamInfo->nAssocRspLength - FT_ASSOC_RSP_IES_OFFSET;
rspRsnLength = len;