diff --git a/core/hdd/src/wlan_hdd_hostapd.c b/core/hdd/src/wlan_hdd_hostapd.c index d8a6d1593c64..bcdcabe3e56f 100644 --- a/core/hdd/src/wlan_hdd_hostapd.c +++ b/core/hdd/src/wlan_hdd_hostapd.c @@ -2611,6 +2611,11 @@ QDF_STATUS hdd_hostapd_sap_event_cb(struct sap_event *sap_event, qdf_atomic_set(&adapter->ch_switch_in_progress, 0); policy_mgr_set_chan_switch_complete_evt(hdd_ctx->psoc); wlan_hdd_enable_roaming(adapter); + + /* Check any other sap need restart */ + if (ap_ctx->sap_context->csa_reason == + CSA_REASON_UNSAFE_CHANNEL) + hdd_unsafe_channel_restart_sap(hdd_ctx); return QDF_STATUS_SUCCESS; default: diff --git a/core/hdd/src/wlan_hdd_main.c b/core/hdd/src/wlan_hdd_main.c index beecdafbc0bf..f8eb91c7d0fe 100644 --- a/core/hdd/src/wlan_hdd_main.c +++ b/core/hdd/src/wlan_hdd_main.c @@ -9195,9 +9195,7 @@ void hdd_unsafe_channel_restart_sap(struct hdd_context *hdd_ctxt) CSA_REASON_UNSAFE_CHANNEL); hdd_switch_sap_channel(adapter, restart_chan, true); - hdd_store_sap_restart_channel( - restart_chan, - restart_chan_store); + return; } else { hdd_debug("sending coex indication");