[PATCH v3 2/2] ath10k: Enable Airtime-based Queue Limit (AQL)

2019-10-09 Thread Kan Yan
Calculate the estimated airtime pending in the txqs and apply AQL to prevent excessive amounts of packets being queued in the firmware queue. Signed-off-by: Kan Yan --- drivers/net/wireless/ath/ath10k/htt_rx.c | 1 + drivers/net/wireless/ath/ath10k/mac.c| 8 +---

[PATCH v3 1/2] mac80211: Implement Airtime-based Queue Limit (AQL)

2019-10-09 Thread Kan Yan
In order for the Fq_CoDel integrated in mac80211 layer operates effectively to control excessive queueing latency, the CoDel algorithm requires an accurate measure of how long the packets stays in the queue, aka sojourn time. The sojourn time measured at mac80211 layer doesn't include queueing

[PATCH v3 0/2] Implement Airtime-based Queue Limit (AQL)

2019-10-09 Thread Kan Yan
This patch series implements Airtime-based Queue Limit (AQL) in the mac80211 and Ath10k driver. It is based on an earlier version from the ChromiumOS tree[0]. This version has been tested with QCA9884 platform with 4.14 kernel. Tests show AQL is able to reduce latency by an order of magnitude

Re: [PATCH 2/2] ath10k: switch to ieee80211_tx_dequeue_ni

2019-10-09 Thread Erik Stromdahl
On 10/9/19 9:23 PM, Erik Stromdahl wrote: On 10/1/19 7:13 PM, Peter Oh wrote: On 10/1/19 4:48 AM, Kalle Valo wrote: Erik Stromdahl writes: Since ath10k_mac_tx_push_txq() can be called from process context, we must explicitly disable softirqs before the call into mac80211. By calling

Re: [PATCH 2/2] ath10k: switch to ieee80211_tx_dequeue_ni

2019-10-09 Thread Erik Stromdahl
On 10/1/19 7:13 PM, Peter Oh wrote: On 10/1/19 4:48 AM, Kalle Valo wrote: Erik Stromdahl writes: Since ath10k_mac_tx_push_txq() can be called from process context, we must explicitly disable softirqs before the call into mac80211. By calling ieee80211_tx_dequeue_ni() instead of

Re: [PATCH v2 2/2] ath10k: Enable Airtime-based Queue Limit (AQL)

2019-10-09 Thread Kalle Valo
Kan Yan writes: > Calculate the estimated airtime pending in the txqs and apply AQL to > prevent excessive amounts of packets being queued in the firmware queue. > > Signed-off-by: Kan Yan Please CC ath10k patches to ath10k list, I doubt all ath10k developers follow linux-wireless. --

[PATCH 2/2] ath10k: fix memory leak for tpc_stats_final

2019-10-09 Thread Miaoqing Pan
The memory of ar->debug.tpc_stats_final is reallocated every debugfs reading, it should be freed in ath10k_debug_destroy() for the last allocation. Tested HW: QCA9984 Tested FW: 10.4-3.9.0.2-00035 Signed-off-by: Miaoqing Pan --- drivers/net/wireless/ath/ath10k/debug.c | 1 + 1 file changed, 1

[PATCH 1/2] ath10k: fix array out-of-bounds access

2019-10-09 Thread Miaoqing Pan
If firmware reports rate_max > WMI_TPC_RATE_MAX(WMI_TPC_FINAL_RATE_MAX) or num_tx_chain > WMI_TPC_TX_N_CHAIN, it will cause array out-of-bounds access, so print a warning and reset to avoid memory corruption. Tested HW: QCA9984 Tested FW: 10.4-3.9.0.2-00035 Signed-off-by: Miaoqing Pan ---