summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKumar Anand <kumaranand@google.com>2019-05-17 23:55:39 +0000
committerAndroid Partner Code Review <android-gerrit-partner@google.com>2019-05-17 23:55:39 +0000
commit0371413c87b552b7d93df37ac169dfb4d1b1fe6a (patch)
treeb8334aee546775d9cb6ef41b9bafa73424093f5b
parent20b67eea9a477e1d43f706b4470efbccec057f23 (diff)
parent69b09e156829df032f63bd12136ac702f4463535 (diff)
downloadqcacld-0371413c87b552b7d93df37ac169dfb4d1b1fe6a.tar.gz
Merge changes I24586070,I503837a9 into android-msm-pixel-4.9
* changes: qcacld-3.0: Purge neighbor report cache if unsolicited qcacld-3.0: Post scan req on priority to sme queue
-rw-r--r--core/sme/src/common/sme_api.c3
-rw-r--r--core/sme/src/rrm/sme_rrm.c25
2 files changed, 10 insertions, 18 deletions
diff --git a/core/sme/src/common/sme_api.c b/core/sme/src/common/sme_api.c
index 6f8a4d3fe7..7f35338077 100644
--- a/core/sme/src/common/sme_api.c
+++ b/core/sme/src/common/sme_api.c
@@ -3388,7 +3388,8 @@ QDF_STATUS sme_scan_request(tHalHandle hal, uint8_t session_id,
msg.reserved = 0;
msg.bodyval = 0;
if (QDF_STATUS_SUCCESS !=
- cds_mq_post_message(QDF_MODULE_ID_SME, &msg)) {
+ cds_mq_post_message_by_priority(QDF_MODULE_ID_SME,
+ &msg, HIGH_PRIORITY)) {
sme_err("sme_scan_req failed to post msg");
csr_scan_free_request(mac_ctx, scan_msg->scan_param);
qdf_mem_free(scan_msg->scan_param);
diff --git a/core/sme/src/rrm/sme_rrm.c b/core/sme/src/rrm/sme_rrm.c
index 8e7cba1a4e..1cfe063b5a 100644
--- a/core/sme/src/rrm/sme_rrm.c
+++ b/core/sme/src/rrm/sme_rrm.c
@@ -1191,23 +1191,13 @@ static QDF_STATUS sme_rrm_process_neighbor_report(tpAniSirGlobal pMac,
tpRrmNeighborReportDesc pNeighborReportDesc;
uint8_t i = 0;
QDF_STATUS qdf_status = QDF_STATUS_SUCCESS;
- uint32_t sessionId;
-
- /* Get the session id */
- status =
- csr_roam_get_session_id_from_bssid(pMac,
- (struct qdf_mac_addr *) pNeighborRpt->bssId,
- &sessionId);
- if (QDF_IS_STATUS_SUCCESS(status)) {
-#ifdef FEATURE_WLAN_ESE
- /* Clear the cache for ESE. */
- if (csr_roam_is_ese_assoc(pMac, sessionId)) {
- rrm_ll_purge_neighbor_cache(pMac,
- &pMac->rrm.rrmSmeContext.
- neighborReportCache);
- }
-#endif
- }
+
+ /* Purge the cache on reception of unsolicited neighbor report */
+ if (!pMac->rrm.rrmSmeContext.neighborReqControlInfo.
+ isNeighborRspPending)
+ rrm_ll_purge_neighbor_cache(pMac,
+ &pMac->rrm.rrmSmeContext.
+ neighborReportCache);
for (i = 0; i < pNeighborRpt->numNeighborReports; i++) {
pNeighborReportDesc =
@@ -1260,6 +1250,7 @@ end:
qdf_status = QDF_STATUS_E_FAILURE;
rrm_indicate_neighbor_report_result(pMac, qdf_status);
+
return status;
}