瀏覽代碼

qcacld-3.0: Teardown TDLS links before starting interface

If the TDLS links exists and SAP comes up, there is a chance
that the peer is created for SAP before deleting TDLS peers,
thus leading to crash.

The fix is to teardown the TDLS links before starting hostapd
or starting the association process to avoid TDLS in concurrency
case.

Change-Id: I06c0d4f8965d3a1e614e8bd89f2d6af0a504fa9e
CRs-Fixed: 2027831
Nitesh Shah 8 年之前
父節點
當前提交
273e4e5649
共有 2 個文件被更改,包括 4 次插入0 次删除
  1. 2 0
      core/hdd/src/wlan_hdd_cfg80211.c
  2. 2 0
      core/hdd/src/wlan_hdd_hostapd.c

+ 2 - 0
core/hdd/src/wlan_hdd_cfg80211.c

@@ -13018,6 +13018,8 @@ static int wlan_hdd_cfg80211_connect_start(hdd_adapter_t *pAdapter,
 		goto ret_status;
 	}
 
+	wlan_hdd_tdls_disable_offchan_and_teardown_links(pHddCtx);
+
 	pRoamProfile = &pWextState->roamProfile;
 	qdf_mem_zero(&hdd_sta_ctx->conn_info.conn_flag,
 		     sizeof(hdd_sta_ctx->conn_info.conn_flag));

+ 2 - 0
core/hdd/src/wlan_hdd_hostapd.c

@@ -7399,6 +7399,8 @@ int wlan_hdd_cfg80211_start_bss(hdd_adapter_t *pHostapdAdapter,
 		return -EINVAL;
 	}
 
+	wlan_hdd_tdls_disable_offchan_and_teardown_links(pHddCtx);
+
 	if (policy_mgr_is_hw_mode_change_in_progress(pHddCtx->hdd_psoc)) {
 		status = policy_mgr_wait_for_connection_update(
 			pHddCtx->hdd_psoc);