[Make-wifi-fast] [PATCH v3 4/4] mac80211: Use Airtime-based Queue Limits (AQL) on packet dequeue

Toke Høiland-Jørgensen toke at redhat.com
Sat Oct 19 07:12:55 EDT 2019


Kan Yan <kyan at google.com> writes:

>> +       if (local->airtime_flags & AIRTIME_USE_AQL) {
>> +               airtime = ieee80211_calc_expected_tx_airtime(hw, vif, txq->sta,
>> +                                                            skb->len);
>> +               if (airtime) {
>> +                       /* We only have 10 bits in tx_time_est, so store airtime
>> +                        * in increments of 4 us and clamp that to 2**10.
>> +                        */
>> +                       info->tx_time_est = min_t(u32, airtime >> 2, 1 << 10);
>> +                       ieee80211_sta_update_pending_airtime(local, tx.sta, ac,
>> +                                                            airtime, false);
>> +               }
>> +       }
>> +
>
> It should be:
>                          ieee80211_sta_update_pending_airtime(local, tx.sta, ac,
>
> info->tx_time_est << 2, false);
>
> The airtime rounded to 4us (info->tx_time_est << 2), instead of the
> original airtime should be used when registering the pending airtime,
> to keep it consistent with airtime subtracted when the skb is freed.

Yes, I realised that last night as well. The rounding is also off (max
is 2**10-1, not 2**10. Will send a v4 :)

-Toke



More information about the Make-wifi-fast mailing list