Browse Source

qcacmn: Release vdev ref in os_if_ndp_end_ind_handler

NAN vdev ref count incremented as part of end_ind handler
is not released which will result in the nan vdev not
getting physically deleted.

Fix is to release nan vdev ref in os_if_ndp_end_ind_handler.

Change-Id: I31a32fa241fb9e86d3a64d490722bc42905970c4
CRs-Fixed: 2325580
Yeshwanth Sriram Guntuka 6 years ago
parent
commit
71fb6bc49d
1 changed files with 8 additions and 0 deletions
  1. 8 0
      src/target_if_nan.c

+ 8 - 0
src/target_if_nan.c

@@ -560,6 +560,14 @@ static int target_if_ndp_end_ind_handler(ol_scn_t scn, uint8_t *data,
 		return -EINVAL;
 	}
 
+	rsp->vdev = wlan_objmgr_get_vdev_by_opmode_from_psoc(
+			  wmi_handle->soc->wmi_psoc, QDF_NDI_MODE, WLAN_NAN_ID);
+	if (!rsp->vdev) {
+		target_if_err("vdev is null");
+		qdf_mem_free(rsp);
+		return -EINVAL;
+	}
+
 	msg.bodyptr = rsp;
 	msg.type = NDP_END_IND;
 	msg.callback = target_if_nan_event_dispatcher;