mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-29 03:01:39 -04:00
qcacld-3.0: cdp: Convergence of cdp_flowctl_ops
Currently the cdp apis are given pdev/vdev/peer handle as its arguments, which is directly accessed in those APIs. This can cause a race-condition in access of the respective handles if it has been deleted in parallel. Hence as a part of cdp convergence, pass only the pdev/vdev id or peer mac address, which will be used to get the respective handles, and hence avoiding the unwanted access of the handles if it has been deleted. Converged flowctl_ops - flow_pool_map_handler - flow_pool_unmap_handler - dump_flow_pool_info - tx_desc_thresh_reached CRs-Fixed: 2539738 Change-Id: I9b11e66d8c2644f16e0f2464c323798a4cba007a
This commit is contained in:
parent
76be14960f
commit
a889ffa967
9 changed files with 50 additions and 35 deletions
|
|
@ -425,15 +425,9 @@ static enum wlan_ipa_forward_type wlan_ipa_intrabss_forward(
|
|||
{
|
||||
int ret = WLAN_IPA_FORWARD_PKT_NONE;
|
||||
void *soc = cds_get_context(QDF_MODULE_ID_SOC);
|
||||
void *pdev = cds_get_context(QDF_MODULE_ID_TXRX);
|
||||
|
||||
if ((desc & FW_RX_DESC_FORWARD_M)) {
|
||||
void *vdev = cdp_get_vdev_from_vdev_id(soc, pdev,
|
||||
iface_ctx->session_id);
|
||||
if (!vdev)
|
||||
goto drop_pkt;
|
||||
|
||||
if (cdp_tx_desc_thresh_reached(soc, vdev)) {
|
||||
if (cdp_tx_desc_thresh_reached(soc, iface_ctx->session_id)) {
|
||||
/* Drop the packet*/
|
||||
ipa_ctx->stats.num_tx_fwd_err++;
|
||||
goto drop_pkt;
|
||||
|
|
|
|||
Loading…
Reference in a new issue