Ver Fonte

qcacld-3.0: Check vdev valid in lim_free_peer_idxpool

During pe_session creation, the vdev maybe deleted and "get"
vdev by wlan_objmgr_get_vdev_by_id_from_psoc in pe_create_session
will be failed.
In this error case, lim_free_peer_idxpool needs to check vdev
valid before access pe session vdev ptr.

Change-Id: Ia03df566c1d90d3b0fe30d082861d10de4098f90
CRs-Fixed: 3141675
Liangwei Dong há 3 anos atrás
pai
commit
9c323fad78
1 ficheiros alterados com 5 adições e 0 exclusões
  1. 5 0
      core/mac/src/pe/lim/lim_aid_mgmt.c

+ 5 - 0
core/mac/src/pe/lim/lim_aid_mgmt.c

@@ -1,5 +1,6 @@
 /*
  * Copyright (c) 2011-2016, 2018-2021 The Linux Foundation. All rights reserved.
+ * Copyright (c) 2022 Qualcomm Innovation Center, Inc. All rights reserved.
  *
  * Permission to use, copy, modify, and/or distribute this software for
  * any purpose with or without fee is hereby granted, provided that the
@@ -134,6 +135,10 @@ static void lim_free_peer_idxpool_legacy(struct pe_session *pe_session)
 
 void lim_free_peer_idxpool(struct pe_session *pe_session)
 {
+	if (!pe_session->vdev) {
+		pe_debug("vdev is null");
+		return;
+	}
 	if (!wlan_vdev_mlme_is_mlo_ap(pe_session->vdev))
 		lim_free_peer_idxpool_legacy(pe_session);
 }