qcacld-3.0: Fix Rx thread suspend error in DP component

Rx thread suspend fail error not handled properly, fix this
by adding proper error case.

Change-Id: Ia46eda8736c47f3015c36a6fa915fbc73a802062
CRs-Fixed: 3356655
This commit is contained in:
Roopavathi Lingampalli
2022-12-08 17:19:07 +05:30
committed by Madan Koyyalamudi
parent 258e6ac52f
commit fe456edd03

View File

@@ -337,21 +337,19 @@ ucfg_dp_suspend_handler(struct wlan_objmgr_psoc *psoc, void *arg)
dp_err("DP context not found");
return QDF_STATUS_E_FAILURE;
}
dp_ctx->is_suspend = true;
cdp_set_tx_pause(soc, true);
dp_for_each_intf_held_safe(dp_ctx, dp_intf, dp_intf_next) {
dp_intf->sap_tx_block_mask |= WLAN_DP_SUSPEND;
}
if (dp_ctx->enable_dp_rx_threads) {
status = dp_txrx_suspend(cds_get_context(QDF_MODULE_ID_SOC));
if (status != QDF_STATUS_SUCCESS) {
dp_intf->sap_tx_block_mask &= ~WLAN_DP_SUSPEND;
dp_txrx_resume(cds_get_context(QDF_MODULE_ID_SOC));
return status;
}
}
dp_ctx->is_suspend = true;
cdp_set_tx_pause(soc, true);
dp_for_each_intf_held_safe(dp_ctx, dp_intf, dp_intf_next) {
dp_intf->sap_tx_block_mask |= WLAN_DP_SUSPEND;
}
return QDF_STATUS_SUCCESS;
}