diff options
| author | Abhishek Singh <absingh@codeaurora.org> | 2017-03-09 16:09:33 +0530 |
|---|---|---|
| committer | Gerrit - the friendly Code Review server <code-review@localhost> | 2017-03-17 12:07:18 -0700 |
| commit | 360c5d590ec8ee27fa2aa1fd533159f9449f4230 (patch) | |
| tree | 6c6a4e6b8532cf5205710b2477d1ff9f4fd05b7f | |
| parent | e2be5043108964bf3f48d65cbb247dda30073ffa (diff) | |
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
| -rw-r--r-- | core/mac/src/sys/legacy/src/system/src/sys_entry_func.c | 17 |
1 files 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); |
