qcacmn: Add skb fast recycler check in rx replenish

In ethernet TX fast recycle bit is set to buffer after
invalidate.

In Rx replenish API do not invalidate buffer if fast
recycle bit is set as it is already done

Change-Id: Ic74a96033a659baac381c921aff75296d155f169
CRs-Fixed: 3321142
This commit is contained in:
Chaithanya Garrepalli
2022-10-26 11:49:23 +05:30
committed by Madan Koyyalamudi
父節點 5fb7638690
當前提交 a34dd02dd0
共有 3 個文件被更改,包括 21 次插入0 次删除

查看文件

@@ -2415,6 +2415,7 @@ void dp_rx_buffers_lt_replenish_simple(struct dp_soc *soc, uint32_t mac_id,
rx_desc_pool);
}
#ifndef QCA_DP_NBUF_FAST_RECYCLE_CHECK
static inline
qdf_dma_addr_t dp_rx_nbuf_sync_no_dsb(struct dp_soc *dp_soc,
qdf_nbuf_t nbuf,
@@ -2425,6 +2426,23 @@ qdf_dma_addr_t dp_rx_nbuf_sync_no_dsb(struct dp_soc *dp_soc,
return (qdf_dma_addr_t)qdf_mem_virt_to_phys(nbuf->data);
}
#else
static inline
qdf_dma_addr_t dp_rx_nbuf_sync_no_dsb(struct dp_soc *dp_soc,
qdf_nbuf_t nbuf,
uint32_t buf_size)
{
if (unlikely(!nbuf->fast_recycled)) {
qdf_nbuf_dma_inv_range_no_dsb((void *)nbuf->data,
(void *)(nbuf->data + buf_size));
} else {
DP_STATS_INC(dp_soc, rx.fast_recycled, 1);
}
nbuf->fast_recycled = 0;
return (qdf_dma_addr_t)qdf_mem_virt_to_phys(nbuf->data);
}
#endif
static inline
qdf_dma_addr_t dp_rx_nbuf_sync(struct dp_soc *dp_soc,