]> 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)
commitd20f3149e386a1d9315a2a7aa1cfad26b1225e2c
treec6ac91b8b5081264c1fb18343f89bf0b621bc60e
parent4bc13273c6b6b6285b3843253148b28bdb73e1e6
wifi: mac80211: switch airtime fairness back to deficit round-robin scheduling

This reverts commits 3d236276875ad6cf9ce06f72f937e6a5e7d02d38 and
a8747a34fce81a9367fd2f79eaded57c7099138c.

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