Explorar o código

qcacmn: Don't unlink the BSS for ML VDEV connect failure

Currently driver is doing unlink BSS when there is a connect failure.
This will cause an issue, for 2G+5G ML connection.
  1) Connect on 5G link failed due to Auth failure
  2) Connect on next candidate (2G) is success and FW is in SMM
  3) Partner link(5G) connect will fail due to 5G scan entry won't
     be found in SMM mode.

To avoid this, don't unlink the BSS for ML VDEV connect failure.

Change-Id: Icaa8c736d9038c971b5c3d459fd4af5a833bdc80
CRs-Fixed: 3129726
Bapiraju Alla %!s(int64=3) %!d(string=hai) anos
pai
achega
b88a049cb7
Modificáronse 1 ficheiros con 7 adicións e 1 borrados
  1. 7 1
      os_if/linux/mlme/src/osif_cm_connect_rsp.c

+ 7 - 1
os_if/linux/mlme/src/osif_cm_connect_rsp.c

@@ -877,7 +877,13 @@ QDF_STATUS osif_failed_candidate_handler(struct wlan_objmgr_vdev *vdev,
 		       rsp->ssid.length, rsp->ssid.ssid, rsp->cm_id,
 		       rsp->reason, rsp->status_code);
 
-	osif_check_and_unlink_bss(vdev, osif_priv, rsp);
+	/**
+	 * Do not unlink the BSS if it is an ML candidate. In case of ML,
+	 * failed candidate may be used as partner link while trying the
+	 * connection on other links.
+	 */
+	if (!wlan_vdev_mlme_is_mlo_vdev(vdev))
+		osif_check_and_unlink_bss(vdev, osif_priv, rsp);
 
 	return QDF_STATUS_SUCCESS;
 }