Răsfoiți Sursa

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 ani în urmă
părinte
comite
273e4e5649
2 a modificat fișierele cu 4 adăugiri și 0 ștergeri
  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);