diff options
author | Jonas Jelonek <jelonek.jonas@gmail.com> | 2021-12-17 20:27:20 +0200 |
---|---|---|
committer | Kalle Valo <quic_kvalo@quicinc.com> | 2021-12-20 18:02:12 +0200 |
commit | a5d862da91058a855ab00bf46b5383543bbf3979 (patch) | |
tree | d2f00f485bb7b6d79f32f63f8b5e8de33503401f /kernel/watchdog.c | |
parent | f75c1d55ecbadce027fd650d3ca79e357afae0d9 (diff) |
ath5k: switch to rate table based lookup
Switching from legacy usage of ieee80211_get_tx_rates() lookup to direct
rate table lookup in struct ieee80211_sta->rates.
The current rate control API allows drivers to directly get rates from
ieee80211_sta->rates. ath5k is currently one of the legacy drivers that
perform translation/merge with the internal rate table via
ieee80211_get_tx_rates provided by rate control API.
For our upcoming changes to rate control API and the implementation of
transmit power control, this patch changes the behaviour. The call to
ieee80211_get_tx_rates and subsequent calls are also avoided. ath5k now
directly reads rates from sta->rates into its internal rate table. Cause
ath5k does not rely on the rate array in SKB->CB, this is not considered
anymore except for the first entry (used for probing).
Tested this on a PCEngines ALIX with CMP9-GP miniPCI wifi card (Atheros
AR5213A). Generated traffic between AP and multiple STAs before and
after applying the patch and simultaneously measured throughput and
captured rc_stats. Comparison resulted in same rate selection and no
performance loss between both runs.
Co-developed-by: Thomas Huehn <thomas.huehn@hs-nordhausen.de>
Signed-off-by: Thomas Huehn <thomas.huehn@hs-nordhausen.de>
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
Signed-off-by: Kalle Valo <quic_kvalo@quicinc.com>
Link: https://lore.kernel.org/r/20211215215042.637-1-jelonek.jonas@gmail.com
Diffstat (limited to 'kernel/watchdog.c')
0 files changed, 0 insertions, 0 deletions