diff options
| author | Alexander Wetzel <Alexander@wetzel-home.de> | 2025-07-17 18:25:46 +0200 |
|---|---|---|
| committer | Johannes Berg <johannes.berg@intel.com> | 2025-07-18 14:24:39 +0200 |
| commit | 11e3e22fa533f5d7cf04e32343b05a27eda3c7a5 (patch) | |
| tree | 99fc8f76e40c3169b54e3ced49cca7646ea3c658 /scripts/macro_checker.py | |
| parent | 2c5dee15239f3f3e31aa5c8808f18996c039e2c1 (diff) | |
wifi: mac80211: Do not schedule stopped TXQs
Ignore TXQs with the flag IEEE80211_TXQ_STOP when scheduling a queue.
The flag is only set after all fragments have been dequeued and won't
allow dequeueing other frames as long as the flag is set.
For drivers using ieee80211_txq_schedule_start() this prevents an
loop trying to push the queued frames while IEEE80211_TXQ_STOP is set:
After setting IEEE80211_TXQ_STOP the driver will call
ieee80211_return_txq(). Which calls __ieee80211_schedule_txq(), detects
that there sill are frames in the queue and immediately restarts the
stopped TXQ. Which can't dequeue any frame and thus starts over the loop.
Signed-off-by: Alexander Wetzel <Alexander@wetzel-home.de>
Fixes: ba8c3d6f16a1 ("mac80211: add an intermediate software queue implementation")
Link: https://patch.msgid.link/20250717162547.94582-2-Alexander@wetzel-home.de
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'scripts/macro_checker.py')
0 files changed, 0 insertions, 0 deletions
