]> git.baikalelectronics.ru Git - kernel.git/commit
wifi: mac80211: switch airtime fairness back to deficit round-robin scheduling
authorFelix Fietkau <nbd@nbd.name>
Sat, 25 Jun 2022 21:24:05 +0000 (23:24 +0200)
committerJohannes Berg <johannes.berg@intel.com>
Fri, 1 Jul 2022 08:51:41 +0000 (10:51 +0200)
commitb945db0e3885c9013dd660e140e6e45ed0ca0150
treec6ac91b8b5081264c1fb18343f89bf0b621bc60e
parent978de9d145de6e56a8b8b2f898b410bf4cb5fcc0
wifi: mac80211: switch airtime fairness back to deficit round-robin scheduling

This reverts commits d5afddecee16ecd6a95a966665d12bcd187a01e5 and
3e25630e314f06b6ee07e0c64ab26ba981b2bc36.

The virtual time scheduler code has a number of issues:
- queues slowed down by hardware/firmware powersave handling were not properly
  handled.
- on ath10k in push-pull mode, tx queues that the driver tries to pull from
  were starved, causing excessive latency
- delay between tx enqueue and reported airtime use were causing excessively
  bursty tx behavior

The bursty behavior may also be present on the round-robin scheduler, but there
it is much easier to fix without introducing additional regressions

Signed-off-by: Felix Fietkau <nbd@nbd.name>
Acked-by: Toke Høiland-Jørgensen <toke@toke.dk>
Link: https://lore.kernel.org/r/20220625212411.36675-1-nbd@nbd.name
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
13 files changed:
include/net/mac80211.h
net/mac80211/cfg.c
net/mac80211/debugfs.c
net/mac80211/debugfs_netdev.c
net/mac80211/debugfs_sta.c
net/mac80211/ieee80211_i.h
net/mac80211/iface.c
net/mac80211/main.c
net/mac80211/rx.c
net/mac80211/sta_info.c
net/mac80211/sta_info.h
net/mac80211/status.c
net/mac80211/tx.c