qcacld-3.0: Avoid race about roam to invalid channel

Currently, when channel list is changed. It updates
the channel list to fw first and then disconnect the
sta. This causes race condition to roam to invalid
channel.

To resolve this, disconnect the sta and then update
channel list.

Change-Id: I12d8098ee6acececc8a574d2b15f5c4774c07936
CRs-Fixed: 2806706
This commit is contained in:
Paul Zhang
2020-10-28 18:11:52 +08:00
committed by snandini
parent 6ffb32a5d1
commit 13e650860f

View File

@@ -1572,6 +1572,8 @@ static void __hdd_country_change_work_handle(struct hdd_context *hdd_ctx)
* selection for SAPs
*/
hdd_country_change_update_sta(hdd_ctx);
sme_generic_change_country_code(hdd_ctx->mac_handle,
hdd_ctx->reg.alpha2);
hdd_country_change_update_sap(hdd_ctx);
}
@@ -1645,8 +1647,6 @@ static void hdd_regulatory_dyn_cbk(struct wlan_objmgr_psoc *psoc,
} else {
hdd_config_tdls_with_band_switch(hdd_ctx);
sme_generic_change_country_code(hdd_ctx->mac_handle,
hdd_ctx->reg.alpha2);
qdf_sched_work(0, &hdd_ctx->country_change_work);
}
}