|
@@ -8318,6 +8318,7 @@ QDF_STATUS csr_roam_connect(tpAniSirGlobal pMac, uint32_t sessionId,
|
|
|
|
|
|
/* Initialize the count before proceeding with the Join requests */
|
|
|
pSession->join_bssid_count = 0;
|
|
|
+ pSession->discon_in_progress = false;
|
|
|
pSession->is_fils_connection = csr_is_fils_connection(pProfile);
|
|
|
sme_debug(
|
|
|
"called BSSType = %s (%d) authtype = %d encryType = %d",
|
|
@@ -20546,9 +20547,11 @@ static QDF_STATUS csr_process_roam_sync_callback(tpAniSirGlobal mac_ctx,
|
|
|
*/
|
|
|
csr_roam_roaming_offload_timer_action(mac_ctx,
|
|
|
0, session_id, ROAMING_OFFLOAD_TIMER_STOP);
|
|
|
- if (!CSR_IS_ROAM_JOINED(mac_ctx, session_id)) {
|
|
|
+ if (session->discon_in_progress ||
|
|
|
+ !CSR_IS_ROAM_JOINED(mac_ctx, session_id)) {
|
|
|
QDF_TRACE(QDF_MODULE_ID_SME, QDF_TRACE_LEVEL_DEBUG,
|
|
|
- FL("LFR3: Session not in connected state"));
|
|
|
+ FL("LFR3: Session not in connected state or disconnect is in progress %d"),
|
|
|
+ session->discon_in_progress);
|
|
|
return QDF_STATUS_E_FAILURE;
|
|
|
}
|
|
|
csr_roam_call_callback(mac_ctx, session_id, NULL, 0,
|