From 360c5d590ec8ee27fa2aa1fd533159f9449f4230 Mon Sep 17 00:00:00 2001 From: Abhishek Singh Date: Thu, 9 Mar 2017 16:09:33 +0530 Subject: qcacld-3.0: Prioritize connection req frames in pe queue qcacld-2.0 to qcacld-3.0 propagation If there are many beacon/probe received and posted to pe queue the connection req frames may get delayed and thus effect the connection. This may also lead to connection failures. To avoid this prioritize the connection req frames in pe queue. Change-Id: I5a6fd5c21242205dd080b2ba0cff5f823f51d109 CRs-Fixed: 2013381 --- core/mac/src/sys/legacy/src/system/src/sys_entry_func.c | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/core/mac/src/sys/legacy/src/system/src/sys_entry_func.c b/core/mac/src/sys/legacy/src/system/src/sys_entry_func.c index 1a760459ac91..2df4bc7ef888 100644 --- a/core/mac/src/sys/legacy/src/system/src/sys_entry_func.c +++ b/core/mac/src/sys/legacy/src/system/src/sys_entry_func.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2012-2016 The Linux Foundation. All rights reserved. + * Copyright (c) 2012-2017 The Linux Foundation. All rights reserved. * * Previously licensed under the ISC license by Qualcomm Atheros, Inc. * @@ -180,8 +180,19 @@ sys_bbt_process_message_core(tpAniSirGlobal mac_ctx, tpSirMsgQ msg, mac_ctx->sys.gSysFrameCount[type][subtype]); } - /* Post the message to PE Queue */ - ret = (tSirRetStatus) lim_post_msg_api(mac_ctx, msg); + /* + * Post the message to PE Queue. Prioritize the + * Auth and assoc frames. + */ + if ((subtype == SIR_MAC_MGMT_AUTH) || + (subtype == SIR_MAC_MGMT_ASSOC_RSP) || + (subtype == SIR_MAC_MGMT_REASSOC_RSP) || + (subtype == SIR_MAC_MGMT_ASSOC_REQ) || + (subtype == SIR_MAC_MGMT_REASSOC_REQ)) + ret = (tSirRetStatus) + lim_post_msg_high_priority(mac_ctx, msg); + else + ret = (tSirRetStatus) lim_post_msg_api(mac_ctx, msg); if (ret != eSIR_SUCCESS) { sys_log(mac_ctx, LOGE, FL("posting to LIM2 failed, ret %d\n"), ret); -- cgit v1.2.3