Commit d12ac6c4 authored by Pradeep Kumar Chitrapu's avatar Pradeep Kumar Chitrapu Committed by Kalle Valo
Browse files

ath11k: remove unused tx ring counters



remove unused counter to avoid taking locks inorder to optimize
cpu load.

Using Flamegraph, cpu usage of ath11k_dp_tx() observed to be decreased
from 5.58% to 3.74% with iperf traffic running with 80MHz bandwidth ap
mode.

Signed-off-by: default avatarPradeep Kumar Chitrapu <pradeepc@codeaurora.org>
Signed-off-by: default avatarKalle Valo <kvalo@codeaurora.org>
parent f1d34a01
Loading
Loading
Loading
Loading
+0 −1
Original line number Diff line number Diff line
@@ -63,7 +63,6 @@ struct dp_tx_ring {
	struct dp_srng tcl_data_ring;
	struct dp_srng tcl_comp_ring;
	struct idr txbuf_idr;
	u32 num_tx_pending;
	/* Protects txbuf_idr and num_pending */
	spinlock_t tx_idr_lock;
	DECLARE_KFIFO_PTR(tx_status_fifo, struct hal_wbm_release_ring);
+0 −7
Original line number Diff line number Diff line
@@ -196,10 +196,6 @@ int ath11k_dp_tx(struct ath11k *ar, struct ath11k_vif *arvif,

	spin_unlock_bh(&tcl_ring->lock);

	spin_lock_bh(&tx_ring->tx_idr_lock);
	tx_ring->num_tx_pending++;
	spin_unlock_bh(&tx_ring->tx_idr_lock);

	atomic_inc(&ar->dp.num_tx_pending);

	return 0;
@@ -236,7 +232,6 @@ static void ath11k_dp_tx_free_txbuf(struct ath11k_base *ab, u8 mac_id,
	skb_cb = ATH11K_SKB_CB(msdu);

	idr_remove(&tx_ring->txbuf_idr, msdu_id);
	tx_ring->num_tx_pending--;
	spin_unlock_bh(&tx_ring->tx_idr_lock);

	dma_unmap_single(ab->dev, skb_cb->paddr, msdu->len, DMA_TO_DEVICE);
@@ -272,7 +267,6 @@ ath11k_dp_tx_htt_tx_complete_buf(struct ath11k_base *ab,
	ar = skb_cb->ar;

	idr_remove(&tx_ring->txbuf_idr, ts->msdu_id);
	tx_ring->num_tx_pending--;
	spin_unlock_bh(&tx_ring->tx_idr_lock);

	if (atomic_dec_and_test(&ar->dp.num_tx_pending))
@@ -495,7 +489,6 @@ void ath11k_dp_tx_completion_handler(struct ath11k_base *ab, int ring_id)
			continue;
		}
		idr_remove(&tx_ring->txbuf_idr, msdu_id);
		tx_ring->num_tx_pending--;
		spin_unlock_bh(&tx_ring->tx_idr_lock);

		ar = ab->pdevs[mac_id].ar;