ath11k: optimizations in data path
Get series with b4
b4 am [email protected]Versions newest first · linked by author and title
- v3 Latest12 patches 3 repliesIn review
- v212 patches 4 repliesSuperseded
Changes in v3 from the cover letter
- Changed rcu_dereference to rcu_access_pointer in
[PATCH 07/12] ath11k: add branch predictors in process_rx [PATCH 11/12] ath11k: add branch predictors in dp_tx path. removed redundant check in
[PATCH 02/12] ath11k: allocate dst ring descriptors from cacheable memory.
Patches in v3 No applies recorded yet
| # | Subject and files | Size | Replies | Applied |
|---|---|---|---|---|
| 1/12 | ath11k: disable unused CE8 interrupts for ipq8074drivers/ | +1 | 1 reply | |
| 2/12 | ath11k: allocate dst ring descriptors from cacheable memorydrivers/ drivers/ drivers/ +3 more | +67 | 0 replies | |
| 3/12 | ath11k: modify dp_rx desc access wrapper calls inlinedrivers/ | +59 | 1 reply | |
| 4/12 | ath11k: avoid additional access to ath11k_hal_srng_dst_num_freedrivers/ | +7 | 0 replies | |
| 5/12 | ath11k: avoid active pdev check for each msdudrivers/ | +32 | 0 replies | |
| 6/12 | ath11k: remove usage quota while processing rx packetsdrivers/ | +3 | 0 replies | |
| 7/12 | ath11k: add branch predictors in process_rxdrivers/ | +9 | 0 replies | |
| 8/12 | ath11k: allocate HAL_WBM2SW_RELEASE ring from cacheable memorydrivers/ | +1 | 0 replies | |
| 9/12 | ath11k: remove mod operator in dst ring processingdrivers/ | +5 | 0 replies | |
| 10/12 | ath11k: avoid while loop in ring selection of tx completion interruptdrivers/ | +4 | 0 replies | |
| 11/12 | ath11k: add branch predictors in dp_tx pathdrivers/ drivers/ | +26 | 0 replies | |
| 12/12 | ath11k: avoid unnecessary lock contention in tx_completion pathdrivers/ | +14 | 0 replies |
Reviews trailers per patch
No Reviewed-by, Acked-by or Tested-by trailers for v3 yet.
Cover letter [PATCH v3 00/12] ath11k: optimizations in data path
This patchset covers optimizations in rx (first 7 patches) and tx (remaining 5 patches) data path.
Running UDP DL/UL traffic on IPQ8074 5G radio showed an average 5-10% improvement on a 4 core platform
---
v3:
- Changed rcu_dereference to rcu_access_pointer in
[PATCH 07/12] ath11k: add branch predictors in process_rx [PATCH 11/12] ath11k: add branch predictors in dp_tx path. removed redundant check in
[PATCH 02/12] ath11k: allocate dst ring descriptors from cacheable memory.
v2:
- Addressed internal developer reported segfault and avoid lookup twice by utilizing idr_remove (patch 12/12 and patch 2/12).
---
P Praneesh (12):
ath11k: disable unused CE8 interrupts for ipq8074
ath11k: allocate dst ring descriptors from cacheable memory
ath11k: modify dp_rx desc access wrapper calls inline
ath11k: avoid additional access to ath11k_hal_srng_dst_num_free
ath11k: avoid active pdev check for each msdu
ath11k: remove usage quota while processing rx packets
ath11k: add branch predictors in process_rx
ath11k: allocate HAL_WBM2SW_RELEASE ring from cacheable memory
ath11k: remove mod operator in dst ring processing
ath11k: avoid while loop in ring selection of tx completion interrupt
ath11k: add branch predictors in dp_tx path
ath11k: avoid unnecessary lock contention in tx_completion path
drivers/net/wireless/ath/ath11k/ce.c | 2 +- drivers/net/wireless/ath/ath11k/core.c | 5 + drivers/net/wireless/ath/ath11k/dp.c | 48 ++++++-- drivers/net/wireless/ath/ath11k/dp.h | 1 + drivers/net/wireless/ath/ath11k/dp_rx.c | 207 ++++++++++++++++---------------- drivers/net/wireless/ath/ath11k/dp_tx.c | 86 ++++++------- drivers/net/wireless/ath/ath11k/hal.c | 35 +++++- drivers/net/wireless/ath/ath11k/hal.h | 1 + drivers/net/wireless/ath/ath11k/hw.h | 1 + drivers/net/wireless/ath/ath11k/mac.c | 2 +- 10 files changed, 220 insertions(+), 168 deletions(-)
Signature · 1 line
2.7.4