diff options
| author | Padma, Santhosh Kumar <skpadma@codeaurora.org> | 2017-03-02 18:04:02 +0530 |
|---|---|---|
| committer | Sen, Devendra <dsen@codeaurora.org> | 2017-03-03 12:49:05 +0530 |
| commit | 9eab11cb74aee7d8c42c2dcf71ba100af95876ba (patch) | |
| tree | f5b6cf2f9f038a26d9ac1c56a3285ec97f071bd8 | |
| parent | 1d9a6faa9301a771251561e6390608c79c83bcaf (diff) | |
qcacld-3.0: Serialize WMI_ROAM_EVENTID to MC thread
Currently WMI_ROAM_EVENTID is handled in work queue context whereas
WMI_ROAM_SYNCH_EVENTID is handled in MC Thread context. This can
cause handling of WMI_ROAM_SYNCH_EVENTID followed by WMI_ROAM_EVENTID
if both events are received from firmware almost at the same time
which can result in setting roaming_in_progress to true even after
roam synch event handling and can block further scan requests.
Fix this by handling both WMI_ROAM_EVENTID and WMI_ROAM_SYNCH_EVENTID
in same MC Thread context.
Change-Id: I722cea54fa2126cb5d647f3a26371ca1c9a0f5a2
CRs-Fixed: 2014404
| -rw-r--r-- | core/wma/src/wma_main.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/core/wma/src/wma_main.c b/core/wma/src/wma_main.c index f1423f128c96..8bb49698d078 100644 --- a/core/wma/src/wma_main.c +++ b/core/wma/src/wma_main.c @@ -2995,7 +2995,7 @@ QDF_STATUS wma_start(void *cds_ctx) status = wmi_unified_register_event_handler(wma_handle->wmi_handle, WMI_ROAM_EVENTID, wma_roam_event_callback, - WMA_RX_WORK_CTX); + WMA_RX_SERIALIZER_CTX); if (0 != status) { WMA_LOGP("%s: Failed to register Roam callback", __func__); qdf_status = QDF_STATUS_E_FAILURE; |
