Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit b2e16c18 authored by Jingxiang Ge's avatar Jingxiang Ge Committed by Madan Koyyalamudi
Browse files

qcacmn: Reject vdev destroy if not LOGICALLY_DELETED state

issue happen when wpa_supplicant is creating vdev
and schedule_thread is destroy the same vdev.

if state is not WLAN_OBJ_STATE_LOGICALLY_DELETED,
return back here, otherwise it will cause the creating
vdev_id to be invalid.

Change-Id: I574838bca574add497f1167c75ede44938b7bf17
CRs-Fixed: 2935068
parent 75e69142
Loading
Loading
Loading
Loading
+3 −2
Original line number Diff line number Diff line
@@ -303,9 +303,10 @@ static QDF_STATUS wlan_objmgr_vdev_obj_destroy(struct wlan_objmgr_vdev *vdev)
	obj_mgr_debug("Physically deleting vdev %d", vdev_id);

	if (vdev->obj_state != WLAN_OBJ_STATE_LOGICALLY_DELETED) {
		obj_mgr_err("VDEV object delete is not invoked vdevid:%d objstate:%d",
		obj_mgr_alert("VDEV object delete is not invoked vdevid:%d objstate:%d",
			      wlan_vdev_get_id(vdev), vdev->obj_state);
		WLAN_OBJMGR_BUG(0);
		return QDF_STATUS_E_FAILURE;
	}

	/* Invoke registered destroy handlers */