[Make-wifi-fast] [PATCH v3 0/2] Implement Airtime-based Queue Limit (AQL)
kyan at google.com
Wed Oct 9 22:25:00 EDT 2019
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.
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 in a congested environment without negative impact on the throughput.
Kan Yan (2):
mac80211: Implement Airtime-based Queue Limit (AQL)
ath10k: Enable Airtime-based Queue Limit (AQL)
drivers/net/wireless/ath/ath10k/htt_rx.c | 1 +
drivers/net/wireless/ath/ath10k/mac.c | 8 ++-
drivers/net/wireless/ath/ath10k/txrx.c | 11 +++-
include/net/cfg80211.h | 7 +++
include/net/mac80211.h | 43 +++++++++++++
net/mac80211/debugfs.c | 78 ++++++++++++++++++++++++
net/mac80211/debugfs_sta.c | 43 ++++++++++---
net/mac80211/ieee80211_i.h | 4 ++
net/mac80211/main.c | 8 ++-
net/mac80211/sta_info.c | 30 +++++++++
net/mac80211/sta_info.h | 4 ++
net/mac80211/tx.c | 46 +++++++++++++-
12 files changed, 263 insertions(+), 20 deletions(-)
Changes from v1:
- Fix checkpatch error.
- Keep iterate the list of active_txq until an eligible txq's deficit become non-negative in ieee80211_next_txq(), instead of break the loop after one iteration.
- Enforce the AQL limit in ath10k's pull mode in ath10k_htt_rx_tx_fetch_ind()
Changes from v2:
- More coding style fixes.
- Fixed a bug that txq is not removed from the active_txqs list when txq.sta is null.
- Removed AQL queue limit check from ieee80211_txq_may_transmit(), so at least one frame will be sent to the firmware when called from ath10k_htt_rx_tx_fetch_ind() in ath10k's poll mode.
More information about the Make-wifi-fast