qcacld-3.0: Drain mgmt tx completion only during SSR

To send the vdev delete to firmware, all the references needs to
be released, so on receiving the iff_down from the userspace,driver
is currently draining the peer management frames which are queued
to the firmware, if the firmware is active it can access these
drained frames resulting in system instability.

Drain the management frames only when the driver is recovering.

Change-Id: Ia7a83088cde857c7111f8dff9e18422257fc8cb8
CRs-Fixed: 2778328
Этот коммит содержится в:
Arun Kumar Khandavalli
2020-09-21 12:38:07 +05:30
коммит произвёл snandini
родитель 01c90a667c
Коммит 563c987d44

Просмотреть файл

@@ -494,8 +494,9 @@ static QDF_STATUS wma_handle_vdev_detach(tp_wma_handle wma_handle,
rel_ref:
wma_cdp_vdev_detach(soc, wma_handle, vdev_id);
wlan_mgmt_txrx_vdev_drain(iface->vdev,
wma_mgmt_frame_fill_peer_cb, &i);
if (qdf_is_recovering())
wlan_mgmt_txrx_vdev_drain(iface->vdev,
wma_mgmt_frame_fill_peer_cb, &i);
wma_debug("Releasing wma reference for vdev:%d", vdev_id);
wma_release_vdev_ref(iface);
return status;