From: Dave Taht <dave.taht@gmail.com>
To: Kan Yan <kyan@google.com>
Cc: Johannes Berg <johannes@sipsolutions.net>,
Rajkumar Manoharan <rmanohar@codeaurora.org>,
Kevin Hayes <kevinhayes@google.com>,
Make-Wifi-fast <make-wifi-fast@lists.bufferbloat.net>,
linux-wireless <linux-wireless@vger.kernel.org>,
Yibo Zhao <yiboz@codeaurora.org>, John Crispin <john@phrozen.org>,
Lorenzo Bianconi <lorenzo@kernel.org>,
Felix Fietkau <nbd@nbd.name>
Subject: Re: [Make-wifi-fast] [PATCH v8 0/2] Implement Airtime-based Queue Limit (AQL)
Date: Thu, 14 Nov 2019 18:07:09 -0800 [thread overview]
Message-ID: <CAA93jw5wTbFV51oFJ6tFHLUMo=bau8fbU65k57bQjOHGJoCkkQ@mail.gmail.com> (raw)
In-Reply-To: <CA+iem5vaeLR6v_nZ1YUZhfj32wF0DrvC2nyp8nb8qYAZLQjLdw@mail.gmail.com>
On Thu, Nov 14, 2019 at 6:04 PM Kan Yan <kyan@google.com> 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@google.com> 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@lists.bufferbloat.net
> https://lists.bufferbloat.net/listinfo/make-wifi-fast
--
Dave Täht
CTO, TekLibre, LLC
http://www.teklibre.com
Tel: 1-831-205-9740
next prev parent reply other threads:[~2019-11-15 2:07 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-11-15 1:48 [PATCH v8 0/2] Implement Airtime-based Queue Limit (AQL) Kan Yan
2019-11-15 1:48 ` [v8 PATCH 1/2] mac80211: Import airtime calculation code from mt76 Kan Yan
2019-11-15 1:48 ` [v8 PATCH 2/2] mac80211: Implement Airtime-based Queue Limit (AQL) Kan Yan
2019-11-15 12:56 ` Toke Høiland-Jørgensen
2019-11-16 2:21 ` Kan Yan
2019-11-15 2:04 ` [PATCH v8 0/2] " Kan Yan
2019-11-15 2:07 ` Dave Taht [this message]
[not found] ` <CA+iem5s4ZY239Q4=Gwy3WrmVhcdhesirXph6XQoOP5w-nuWcYw@mail.gmail.com>
2019-11-18 21:08 ` [Make-wifi-fast] " Dave Taht
2019-11-20 0:40 ` Kan Yan
2019-11-20 10:14 ` Toke Høiland-Jørgensen
2019-11-21 2:05 ` Kan Yan
2019-11-21 10:05 ` Toke Høiland-Jørgensen
[not found] ` <CA+iem5tNz2jjEOVmbh3aPTXLLZfkRjZ60-+bon1vDEJ8D4hQJw@mail.gmail.com>
2019-11-22 10:45 ` Toke Høiland-Jørgensen
2019-11-26 5:04 ` Kan Yan
2019-11-26 9:19 ` Toke Høiland-Jørgensen
2019-11-27 2:13 ` Dave Taht
2019-12-03 19:02 ` Kan Yan
2019-12-04 4:47 ` Kalle Valo
[not found] ` <0101016ecf3bc899-6e391bba-96ed-4495-a7be-1aa8dd8f1bf2-000000@us-west-2.amazonses.com>
2019-12-04 8:07 ` Johannes Berg
2019-12-04 14:34 ` Toke Høiland-Jørgensen
2019-12-06 19:53 ` Dave Taht
2019-12-06 22:04 ` Kan Yan
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to='CAA93jw5wTbFV51oFJ6tFHLUMo=bau8fbU65k57bQjOHGJoCkkQ@mail.gmail.com' \
--to=dave.taht@gmail.com \
--cc=johannes@sipsolutions.net \
--cc=john@phrozen.org \
--cc=kevinhayes@google.com \
--cc=kyan@google.com \
--cc=linux-wireless@vger.kernel.org \
--cc=lorenzo@kernel.org \
--cc=make-wifi-fast@lists.bufferbloat.net \
--cc=nbd@nbd.name \
--cc=rmanohar@codeaurora.org \
--cc=yiboz@codeaurora.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).