* [PATCH] ath11k: remove unused tx ring counters
@ 2019-10-24 3:54 Pradeep Kumar Chitrapu
2019-10-25 8:20 ` Kalle Valo
0 siblings, 1 reply; 2+ messages in thread
From: Pradeep Kumar Chitrapu @ 2019-10-24 3:54 UTC (permalink / raw)
To: ath11k; +Cc: Pradeep Kumar Chitrapu
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: Pradeep Kumar Chitrapu <pradeepc@codeaurora.org>
---
drivers/net/wireless/ath/ath11k/dp.h | 1 -
drivers/net/wireless/ath/ath11k/dp_tx.c | 7 -------
2 files changed, 8 deletions(-)
diff --git a/drivers/net/wireless/ath/ath11k/dp.h b/drivers/net/wireless/ath/ath11k/dp.h
index 4db71173db62..d087d515e8a3 100644
--- a/drivers/net/wireless/ath/ath11k/dp.h
+++ b/drivers/net/wireless/ath/ath11k/dp.h
@@ -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);
diff --git a/drivers/net/wireless/ath/ath11k/dp_tx.c b/drivers/net/wireless/ath/ath11k/dp_tx.c
index 51a02b8e66cc..a8b9557c2346 100644
--- a/drivers/net/wireless/ath/ath11k/dp_tx.c
+++ b/drivers/net/wireless/ath/ath11k/dp_tx.c
@@ -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;
--
2.1.2
_______________________________________________
ath11k mailing list
ath11k@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/ath11k
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [PATCH] ath11k: remove unused tx ring counters
2019-10-24 3:54 [PATCH] ath11k: remove unused tx ring counters Pradeep Kumar Chitrapu
@ 2019-10-25 8:20 ` Kalle Valo
0 siblings, 0 replies; 2+ messages in thread
From: Kalle Valo @ 2019-10-25 8:20 UTC (permalink / raw)
To: Pradeep Kumar Chitrapu; +Cc: ath11k
Pradeep Kumar Chitrapu <pradeepc@codeaurora.org> wrote:
> 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: Pradeep Kumar Chitrapu <pradeepc@codeaurora.org>
> Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
Patch applied to ath11k-post-bringup branch of ath.git, thanks.
be0217cf9f47 ath11k: remove unused tx ring counters
--
https://patchwork.kernel.org/patch/11208261/
https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches
_______________________________________________
ath11k mailing list
ath11k@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/ath11k
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2019-10-25 8:20 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-10-24 3:54 [PATCH] ath11k: remove unused tx ring counters Pradeep Kumar Chitrapu
2019-10-25 8:20 ` Kalle Valo
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.