소스 검색

qcacld-3.0: Stop assoc failure timer before starting pmf timeout

Currently if AP sends pmf timeout as part of assoc response,
host starts pmf timer without stopping the assoc failure
timer and retries assoc after the pmf timer expirs, as a
result early assoc failure timeout is observed for the
second assoc request resulting in assoc failure.

To address this issue, stop assoc failure timer before
starting the pmf timeout timer.

Change-Id: I04358e4d0fbe54552f4b387789a256f45dc7e20f
CRs-Fixed: 3602605
Asutosh Mohapatra 1 년 전
부모
커밋
329d430e9d
1개의 변경된 파일6개의 추가작업 그리고 6개의 파일을 삭제
  1. 6 6
      core/mac/src/pe/lim/lim_process_assoc_rsp_frame.c

+ 6 - 6
core/mac/src/pe/lim/lim_process_assoc_rsp_frame.c

@@ -1348,6 +1348,12 @@ lim_process_assoc_rsp_frame(struct mac_context *mac_ctx, uint8_t *rx_pkt_info,
 		lim_add_bssid_to_reject_list(mac_ctx->pdev, &ap_info);
 	}
 
+	/* Stop Association failure timer */
+	if (subtype == LIM_ASSOC)
+		lim_deactivate_and_change_timer(mac_ctx, eLIM_ASSOC_FAIL_TIMER);
+	else
+		lim_stop_reassoc_retry_timer(mac_ctx);
+
 	status = lim_handle_pmfcomeback_timer(session_entry, assoc_rsp);
 	/* return if retry again timer is started and ignore this assoc resp */
 	if (QDF_IS_STATUS_SUCCESS(status)) {
@@ -1357,12 +1363,6 @@ lim_process_assoc_rsp_frame(struct mac_context *mac_ctx, uint8_t *rx_pkt_info,
 		return;
 	}
 
-	/* Stop Association failure timer */
-	if (subtype == LIM_ASSOC)
-		lim_deactivate_and_change_timer(mac_ctx, eLIM_ASSOC_FAIL_TIMER);
-	else
-		lim_stop_reassoc_retry_timer(mac_ctx);
-
 	if (assoc_rsp->status_code != STATUS_SUCCESS) {
 		/*
 		 *Re/Association response was received