mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-11-09 04:12:08 -05:00
qcacld-3.0: Fix mem and timer leak when WMA_DELETE_BSS_REQ timeout
In wma_vdev_resp_timer(), while handling WMA_DELETE_BSS_REQ if wma_crash_on_fw_timeout() is true, SSR is triggered, but timer event_timeout isn't destroyed, wma_target_req, and user_data isn't freed, result in timer and mem leak. Change-Id: Ic47af43de671d195c6addd0360b96305af15d9bf CRs-Fixed: 2337211
This commit is contained in:
parent
d38a1ef8c6
commit
7a03c02b36
1 changed files with 8 additions and 3 deletions
|
|
@ -3603,18 +3603,23 @@ void wma_vdev_resp_timer(void *data)
|
|||
if (wma_crash_on_fw_timeout(wma->fw_timeout_crash) == true) {
|
||||
wma_trigger_recovery_assert_on_fw_timeout(
|
||||
WMA_DELETE_BSS_REQ);
|
||||
return;
|
||||
wma_cleanup_target_req_param(tgt_req);
|
||||
goto free_tgt_req;
|
||||
}
|
||||
|
||||
status = wma_remove_bss_peer(wma, pdev, tgt_req,
|
||||
tgt_req->vdev_id, params);
|
||||
if (status != 0)
|
||||
if (status != 0) {
|
||||
wma_cleanup_target_req_param(tgt_req);
|
||||
goto free_tgt_req;
|
||||
}
|
||||
|
||||
if (wmi_service_enabled(
|
||||
wma->wmi_handle,
|
||||
wmi_service_sync_delete_cmds))
|
||||
wmi_service_sync_delete_cmds)) {
|
||||
wma_cleanup_target_req_param(tgt_req);
|
||||
goto free_tgt_req;
|
||||
}
|
||||
|
||||
if (wma_send_vdev_down_to_fw(wma, tgt_req->vdev_id) !=
|
||||
QDF_STATUS_SUCCESS) {
|
||||
|
|
|
|||
Loading…
Reference in a new issue