From bfcf12f03b8b4ea178b0c2588423d4c7d6421d37 Mon Sep 17 00:00:00 2001 From: Abhishek Ambure Date: Fri, 30 Aug 2019 19:12:24 +0530 Subject: [PATCH] qcacld-3.0: Release WLAN_LEGACY_WMA_ID ref before vdev del command In legacy code WLAN_LEGACY_WMA_ID reference was released after sending vdev delete command to firmware. Now with converged vdev manager, if wmi service "wmi_service_sync_delete_cmds" is not enabled then vdev delete response is sent to upper layer through target_if. Hence WLAN_LEGACY_WMA_ID reference for vdev is released before sending vdev delete command and then wma_txrx_node for the vdev is cleaned up. Change-Id: I717a7911a5139dc5145e7702e831f6f026c8f3aa CRs-Fixed: 2518231 --- core/wma/src/wma_dev_if.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/wma/src/wma_dev_if.c b/core/wma/src/wma_dev_if.c index 9e734b22253d..ec657659d338 100644 --- a/core/wma/src/wma_dev_if.c +++ b/core/wma/src/wma_dev_if.c @@ -720,13 +720,13 @@ static QDF_STATUS wma_handle_vdev_detach(tp_wma_handle wma_handle, iface->del_staself_req = del_vdev_req_param; wlan_vdev_set_dp_handle(iface->vdev, NULL); wma_cdp_vdev_detach(soc, wma_handle, vdev_id); + wma_release_vdev_ref(iface); status = vdev_mgr_delete_send(vdev_mlme); if (QDF_IS_STATUS_ERROR(status)) { WMA_LOGE("Unable to remove an interface"); goto out; } - wma_release_vdev_ref(iface); return status;