On Thu, Nov 14, 2019 at 6:04 PM Kan Yan <kyan@xxxxxxxxxx> wrote: > > I have tested it with Toke's patch "[PATCH v6 4/4] mac80211: Use > Airtime-based Queue Limits (AQL) on packet dequeue", but didn't > include it here, as it is self contained and Toke has plan to update > it. > > The platform (QCA9984) used in my test I do keep hoping for pretty pictures. Got any? :-P > doesn't support 802.11ax, so I > was not able to test the HE mode support added in v7 update of "Import > airtime calculation code from mt76" from Toke. Is there an ax QCAXXXX platform, m.2 card, or mini-pci card worth testing at this point? How are they handling mu-mimo? I have a round of tests scheduled for intel's ax200 chips, soon. Not sure what, if any, of this new work might apply. > On Thu, Nov 14, 2019 at 5:48 PM Kan Yan <kyan@xxxxxxxxxx> wrote: > > > > This patch series port the Airtime Queue Limits concept from the out-of-tree > > ath10k implementation[0] to mac80211. This version takes my patch to do the > > throttling in mac80211, and replaces the driver API with the mechanism from > > Toke's series, which instead calculated the expected airtime at dequeue time > > inside mac80211, storing it in the SKB cb field. > > > > This version has been tested on QCA9984 platform. > > > > [0] https://chromium-review.googlesource.com/c/chromiumos/third_party/kernel/+/1703105/7 > > > > Changelog: > > > > v8: > > - Includes Toke's v7 version of "mac80211: Import airtime calculation code from mt76" > > - Don't clobber sta's customized queue limit when configuring the default via debugfs > > - Fix a racing condition when reset aql_tx_pending. > > > > v7: > > - Fix aql_total_pending_airtime underflow due to insufficient locking. > > > > v6: > > - Fix sta lookup in ieee80211_report_used_skb(). > > - Move call to ieee80211_sta_update_pending_airtime() to a bit later in > > __ieee80211_tx_status() > > v5: > > - Add missing export of ieee80211_calc_rx_airtime() and make > > ieee80211_calc_tx_airtime_rate() static (kbuildbot). > > - Use skb_get_queue_mapping() to get the AC from the skb. > > - Take basic rate configuration for the BSS into account when calculating > > multicast rate. > > v4: > > - Fix calculation that clamps the maximum airtime to fit into 10 bits > > - Incorporate Rich Brown's nits for the commit message in Kan's patch > > - Add fewer local variables to ieee80211_tx_dequeue() > > v3: > > - Move the tx_time_est field so it's shared with ack_frame_id, and use units > > of 4us for the value stored in it. > > - Move the addition of the Ethernet header size into ieee80211_calc_expected_tx_airtime() > > v2: > > - Integrate Kan's approach to airtime throttling. > > - Hopefully fix the cb struct alignment on big-endian architectures. > > > > > > > > Kan Yan (1): > > mac80211: Implement Airtime-based Queue Limit (AQL) > > > > Toke Høiland-Jørgensen (1): > > mac80211: Import airtime calculation code from mt76 > > > > include/net/cfg80211.h | 7 + > > include/net/mac80211.h | 41 +++ > > net/mac80211/Makefile | 3 +- > > net/mac80211/airtime.c | 597 +++++++++++++++++++++++++++++++++++++ > > net/mac80211/debugfs.c | 85 ++++++ > > net/mac80211/debugfs_sta.c | 43 ++- > > net/mac80211/ieee80211_i.h | 8 + > > net/mac80211/main.c | 10 +- > > net/mac80211/sta_info.c | 38 +++ > > net/mac80211/sta_info.h | 8 + > > net/mac80211/tx.c | 47 ++- > > 11 files changed, 872 insertions(+), 15 deletions(-) > > create mode 100644 net/mac80211/airtime.c > > > > -- > > 2.24.0.rc1.363.gb1bccd3e3d-goog > > > _______________________________________________ > Make-wifi-fast mailing list > Make-wifi-fast@xxxxxxxxxxxxxxxxxxxxx > https://lists.bufferbloat.net/listinfo/make-wifi-fast -- Dave Täht CTO, TekLibre, LLC http://www.teklibre.com Tel: 1-831-205-9740