From 5bc0c24d7f6565fa333aa8c8df99b297208a2343 Mon Sep 17 00:00:00 2001 From: "Padma, Santhosh Kumar" Date: Wed, 29 Nov 2017 15:44:27 +0530 Subject: [PATCH] qcacld-3.0: Do not update beacon for ESE Currently driver updates beacon for ESE connections as well as part of SIR_HAL_ROAM_INVOKE. Due to this, there is a possibility that firmware may receive rejection of reassoc request because of stale beacon and results in roaming failure. Hence, do not update beacon for ESE connections so that firmware can use latest beacon to avoid roaming failure. Change-Id: Id10cec040c36e559eacf82388f3d702afc17ce5a CRs-Fixed: 2150713 --- core/sme/src/common/sme_api.c | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/core/sme/src/common/sme_api.c b/core/sme/src/common/sme_api.c index fb8a8c2a126c..2b8ccb19688c 100644 --- a/core/sme/src/common/sme_api.c +++ b/core/sme/src/common/sme_api.c @@ -15213,6 +15213,7 @@ QDF_STATUS sme_fast_reassoc(tHalHandle hal, tCsrRoamProfile *profile, QDF_STATUS status; struct wma_roam_invoke_cmd *fastreassoc; struct scheduler_msg msg = {0}; + tpAniSirGlobal mac_ctx = PMAC_STRUCT(hal); fastreassoc = qdf_mem_malloc(sizeof(*fastreassoc)); if (NULL == fastreassoc) { @@ -15250,6 +15251,16 @@ QDF_STATUS sme_fast_reassoc(tHalHandle hal, tCsrRoamProfile *profile, fastreassoc->frame_len = 0; } + if (csr_is_auth_type_ese(mac_ctx->roam.roamSession[vdev_id]. + connectedProfile.AuthType)) { + sme_debug("Beacon is not required for ESE"); + if (fastreassoc->frame_len) { + qdf_mem_free(fastreassoc->frame_buf); + fastreassoc->frame_buf = NULL; + fastreassoc->frame_len = 0; + } + } + msg.type = SIR_HAL_ROAM_INVOKE; msg.reserved = 0; msg.bodyptr = fastreassoc;