Linux wireless drivers development
 help / color / mirror / Atom feed
From: Johannes Berg <johannes@sipsolutions.net>
To: Julius Bairaktaris <julius@bairaktaris.de>
Cc: toke@toke.dk, nbd@nbd.name, linux-wireless@vger.kernel.org
Subject: Re: [PATCH] wifi: mac80211: keep the TXQ scheduling round number across a closed round
Date: Tue, 08 Sep 2026 16:09:06 +0200	[thread overview]
Message-ID: <702d4fd96837e42ac5d7491e3001ef6eae09b282.camel@sipsolutions.net> (raw)
In-Reply-To: <20260908135224.754049-1-julius@bairaktaris.de> (sfid-20260908_155227_340708_827E0581)

On Tue, 2026-09-08 at 15:52 +0200, Julius Bairaktaris wrote:
> ieee80211_txq_schedule_start() sets local->schedule_round[ac] to 0 when
> the access category is over its airtime limit, so that
> ieee80211_next_txq() serves nothing until a round passes the check
> again. That round is then numbered 1. ieee80211_next_txq() ends a round
> when it reaches a txq whose schedule_round equals the current number,
> so a txq served in a round numbered 1 is skipped in the next round
> numbered 1 as well.
> 
> Where the airtime queue limit binds, closed and open rounds alternate,
> so half of the rounds that could refill the queue return nothing.
> 
> Track whether a round is open in its own flag and leave the round
> number alone. Checking the limit in ieee80211_next_txq() instead would
> walk the active list once per txq served rather than once per round.
> 
> Measured on an IPQ8074 AP with ath11k advertising AQL through the
> series "wifi: ath11k: airtime queue limits, fairness and a driver TXQ
> scheduler", one 1x1 VHT80 station, BE aql_txq_limit 500/1000 us, 20 s
> runs, three interleaved runs per arm, the skipped selections counted
> where ieee80211_next_txq() ends the round. With a TCP download
> forwarded from a wired host, 4227, 4195 and 4268 selections are skipped
> per run without this change and 15, 24 and 41 with it, at 99 to 100
> Mbit/s either way: the network stack's arrivals start rounds often
> enough to cover the loss. With the download generated on the access
> point, where TCP small queues pace the arrivals, the skipped rounds are
> the ones that would have refilled the queue: 35.6, 44.4 and 42.8 Mbit/s
> without this change and 94.7, 94.6 and 95.0 with it.
> 

For the record - one last time - since you keep writing everything with
an LLM I will keep dropping it unread.

johannes

      reply	other threads:[~2026-09-08 14:09 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-09-08 13:52 [PATCH] wifi: mac80211: keep the TXQ scheduling round number across a closed round Julius Bairaktaris
2026-09-08 14:09 ` Johannes Berg [this message]

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=702d4fd96837e42ac5d7491e3001ef6eae09b282.camel@sipsolutions.net \
    --to=johannes@sipsolutions.net \
    --cc=julius@bairaktaris.de \
    --cc=linux-wireless@vger.kernel.org \
    --cc=nbd@nbd.name \
    --cc=toke@toke.dk \
    /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