[PATCH v7 0/4] ath11k/ath12k: implement TX flow control
Julius Bairaktaris
julius at bairaktaris.de
Sun Oct 18 06:19:30 PDT 2026
Hi José Ignacio,
On Sat, Oct 17, 2026 at 09:40 AM Jose Ignacio Tornos Martinez wrote:
> For ath11k, my series is smaller (4 patches, 7 review cycles) and has
> no external dependencies, so it may be simpler to land first. Julius
> already offered to rebase onto it in his cover letter [1] and move the
> ring check into his scheduling round.
Agreed.
One thing on patch 3, from reading the code:
> + if (num_free == 0) {
> + spin_unlock_bh(&tx_ring->wake_tx_lock);
> + break;
> + }
When this breaks, the frames stay in the txq and nothing restarts it
until mac80211 queues the next frame for that txq. A sender waiting for
ACKs then stalls until its retransmit timeout. With AQL I measured this
in v4: one download in three stalled, max RTT 347 ms. A restart from
ath11k_dp_tx_completion_handler() fixes it.
For patches 1-3:
Tested-by: Julius Bairaktaris <julius at bairaktaris.de> # IPQ8074 WLAN.HK.2.9.0.1-02146
Julius
More information about the ath12k
mailing list