Browse Source

qcacld-3.0: Fix bss peer delete if roam to SLO with EAPOL offloaded

If roaming to Multi-link AP but get auth status 1 (connected) from FW,
driver will make it as single link roaming. The link vdev roam
sync will be skipped. The wma_roam_update_vdev API doesn't
check such condition and lost the peer deletion of the old AP.

Fix by check single link roaming with API mlo_get_single_link_ml_roaming
to consider such condition.

Change-Id: Ia69333e8249c4a868554f8fd9a99340fde9257b0
CRs-Fixed: 3448269
Liangwei Dong 2 years ago
parent
commit
05eb2f3263
1 changed files with 1 additions and 1 deletions
  1. 1 1
      core/wma/src/wma_scan_roam.c

+ 1 - 1
core/wma/src/wma_scan_roam.c

@@ -688,7 +688,7 @@ wma_roam_update_vdev(tp_wma_handle wma,
 	 */
 	if (is_multi_link_roam(roam_synch_ind_ptr)) {
 		if (wlan_vdev_mlme_get_is_mlo_link(wma->psoc, vdev_id) ||
-		    mlo_roam_get_num_of_setup_links(roam_synch_ind_ptr) == 1) {
+		    mlo_get_single_link_ml_roaming(wma->psoc, vdev_id)) {
 			status = wma_delete_all_peers(wma, vdev_id);
 			if (QDF_IS_STATUS_ERROR(status))
 				goto end;