diff options
| -rw-r--r-- | core/hdd/src/wlan_hdd_cfg80211.c | 19 |
1 files changed, 7 insertions, 12 deletions
diff --git a/core/hdd/src/wlan_hdd_cfg80211.c b/core/hdd/src/wlan_hdd_cfg80211.c index 24d3faf9bf7c..aa013e0d42fa 100644 --- a/core/hdd/src/wlan_hdd_cfg80211.c +++ b/core/hdd/src/wlan_hdd_cfg80211.c @@ -14581,17 +14581,6 @@ static int __wlan_hdd_cfg80211_change_iface(struct wiphy *wiphy, return -EINVAL; } - pConfig = pHddCtx->config; - wdev = ndev->ieee80211_ptr; - - /* Reset the current device mode bit mask */ - cds_clear_concurrency_mode(pAdapter->device_mode); - - /* - * must be called after cds_clear_concurrency_mode's invocation so the - * current adapter's old device mode mapping is removed from our - * internal records. - */ if (!cds_allow_concurrency( wlan_hdd_convert_nl_iftype_to_hdd_type(type), 0, HW_MODE_20_MHZ)) { @@ -14599,6 +14588,12 @@ static int __wlan_hdd_cfg80211_change_iface(struct wiphy *wiphy, return -EINVAL; } + pConfig = pHddCtx->config; + wdev = ndev->ieee80211_ptr; + + /* Reset the current device mode bit mask */ + cds_clear_concurrency_mode(pAdapter->device_mode); + hdd_update_tdls_ct_and_teardown_links(pHddCtx); if ((pAdapter->device_mode == QDF_STA_MODE) || (pAdapter->device_mode == QDF_P2P_CLIENT_MODE) || @@ -18556,8 +18551,8 @@ static int __wlan_hdd_cfg80211_connect(struct wiphy *wiphy, bssid_hint, channel, 0); if (0 > status) { hdd_err("connect failed"); - return status; } + return status; con_chk_failed: wlan_hdd_cfg80211_clear_privacy(pAdapter); |
