Sfoglia il codice sorgente

qcacmn: Avoid accessing of ml context during non ML peer connection

In the case of non ML peer connection attempt avoid
accessing of ml context.

Change-Id: I7a9b3dee24c0aac8bc9de34574a7aa65620a65ba
CRs-Fixed: 3247440
Sai Rupesh Chevuru 2 anni fa
parent
commit
3e5493ad79
1 ha cambiato i file con 5 aggiunte e 4 eliminazioni
  1. 5 4
      dp/wifi3.0/be/mlo/dp_mlo.c

+ 5 - 4
dp/wifi3.0/be/mlo/dp_mlo.c

@@ -514,19 +514,20 @@ void dp_mlo_partner_chips_map(struct dp_soc *soc,
 			      uint16_t peer_id)
 {
 	struct dp_soc_be *be_soc = dp_get_be_soc_from_dp_soc(soc);
-	struct dp_mlo_ctxt *mlo_ctxt = be_soc->ml_ctxt;
+	struct dp_mlo_ctxt *mlo_ctxt = NULL;
 	bool is_ml_peer_id =
 		HTT_RX_PEER_META_DATA_V1_ML_PEER_VALID_GET(peer_id);
 	uint8_t chip_id;
 	struct dp_soc *temp_soc;
 
-	if (!mlo_ctxt)
-		return;
-
 	/* for non ML peer dont map on partner chips*/
 	if (!is_ml_peer_id)
 		return;
 
+	mlo_ctxt = be_soc->ml_ctxt;
+	if (!mlo_ctxt)
+		return;
+
 	qdf_spin_lock_bh(&mlo_ctxt->ml_soc_list_lock);
 	for (chip_id = 0; chip_id < DP_MAX_MLO_CHIPS; chip_id++) {
 		temp_soc = mlo_ctxt->ml_soc_list[chip_id];