Message ID | 20240320010615.91331-2-quic_periyasa@quicinc.com (mailing list archive) |
---|---|
State | Accepted |
Commit | 9d7bce18e725e21918a7a201bae8be29abb9e0c4 |
Delegated to: | Kalle Valo |
Headers | show |
Series | wifi: ath12k: Optimize the lock contention in Rx data path | expand |
Karthikeyan Periyasamy <quic_periyasa@quicinc.com> wrote: > Currently, the Rxdma buffer replenish procedure implicitly retrieves the > number of free entries when the caller passes req_entries as zero. This is > helpful to replenishing the Rxdma ring when the caller is unaware of the > number of entries to replenish. After the Rxdma ring is initialized, we > can pass req_entries as zero to replenish all the free entry in the Rxdma > ring. This change helps to align the argument req_entries to the used list > entries for better code readability. > > Tested-on: QCN9274 hw2.0 PCI WLAN.WBE.1.0.1-00029-QCAHKSWPL_SILICONZ-1 > > Signed-off-by: Karthikeyan Periyasamy <quic_periyasa@quicinc.com> > Signed-off-by: Kalle Valo <quic_kvalo@quicinc.com> 3 patches applied to ath-next branch of ath.git, thanks. 9d7bce18e725 wifi: ath12k: Refactor Rxdma buffer replinish argument 597b4dd63afa wifi: ath12k: Optimize the lock contention of used list in Rx data path f42bfbe7a507 wifi: ath12k: Refactor error handler of Rxdma replenish
diff --git a/drivers/net/wireless/ath/ath12k/dp_rx.c b/drivers/net/wireless/ath/ath12k/dp_rx.c index ca76c018dd0c..45646d987139 100644 --- a/drivers/net/wireless/ath/ath12k/dp_rx.c +++ b/drivers/net/wireless/ath/ath12k/dp_rx.c @@ -422,13 +422,10 @@ static int ath12k_dp_rxdma_mon_ring_buf_setup(struct ath12k_base *ab, static int ath12k_dp_rxdma_ring_buf_setup(struct ath12k_base *ab, struct dp_rxdma_ring *rx_ring) { - int num_entries; - - num_entries = rx_ring->refill_buf_ring.size / - ath12k_hal_srng_get_entrysize(ab, HAL_RXDMA_BUF); + rx_ring->bufs_max = rx_ring->refill_buf_ring.size / + ath12k_hal_srng_get_entrysize(ab, HAL_RXDMA_BUF); - rx_ring->bufs_max = num_entries; - ath12k_dp_rx_bufs_replenish(ab, rx_ring, num_entries); + ath12k_dp_rx_bufs_replenish(ab, rx_ring, 0); return 0; }
Currently, the Rxdma buffer replenish procedure implicitly retrieves the number of free entries when the caller passes req_entries as zero. This is helpful to replenishing the Rxdma ring when the caller is unaware of the number of entries to replenish. After the Rxdma ring is initialized, we can pass req_entries as zero to replenish all the free entry in the Rxdma ring. This change helps to align the argument req_entries to the used list entries for better code readability. Tested-on: QCN9274 hw2.0 PCI WLAN.WBE.1.0.1-00029-QCAHKSWPL_SILICONZ-1 Signed-off-by: Karthikeyan Periyasamy <quic_periyasa@quicinc.com> --- drivers/net/wireless/ath/ath12k/dp_rx.c | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-)