Re: [PATCH 07/55] staging: wfx: ensure that retry policy always fallbacks to MCS0 / 1Mbps

From: Felix Fietkau
Date: Wed Dec 18 2019 - 06:25:22 EST


On 2019-12-17 16:15, JÃrÃme Pouiller wrote:
> On Tuesday 17 December 2019 12:20:40 CET Felix Fietkau wrote:
> [...]
>> Instead of using per-packet rate info, implement the
>> .sta_rate_tbl_update callback to maintain a primary tx policy used for
>> all non-probing non-fixed-rate packets, which you can alter while
>> packets using it are queued already.
>> The existing approach using per-packet tx_info data should then be used
>> only for probing or fixed-rate packets.
>> You then probably have to be a bit clever in the tx status path for
>> figuring out what rates were actually used.
>
> Indeed, I have noticed that we are are to react to any changes on the
> link quality. Your idea may helps a lot. Thank you.
>
> Do you know if I can safely rely on IEEE80211_TX_CTL_RATE_CTRL_PROBE and
> IEEE80211_TX_CTL_USE_MINRATE to detect probing and fixed-rate packets?
Set the hw flag SUPPORTS_RC_TABLE. That way the skb tx_info will only
have control->rates set for if there are overrides, probing rate, fixed
rate, etc.
That way you can use the default policy if info->control.rates[0].idx == -1

> I currently work on others parts, but I think I will try your suggestion
> in January.
>
> One last thing, do you know why minstrel appends the lowest rate and
> minstrel_ht don't? They should be identical, not?
The minstrel_ht algorithm is newer and minstrel just hasn't been updated
for a number of algorithm changes yet.

- Felix