Re: [PATCH v7 0/4] ath11k/ath12k: implement TX flow control

From: Julius Bairaktaris

Date: Sun Oct 18 2026 - 09:19:41 EST


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@xxxxxxxxxxxxxx> # IPQ8074 WLAN.HK.2.9.0.1-02146

Julius