UPSTREAM: mac80211: make ieee80211_schedule_txq schedule empty TXQs
Currently there is no way for the driver to signal to mac80211 that it should schedule a TXQ even if there are no packets on the mac80211 part of that queue. This is problematic if the driver has an internal retry queue to deal with software A-MPDU retry. This patch changes the behavior of ieee80211_schedule_txq to always schedule the queue, as its only user (ath9k) seems to expect such behavior already: it calls this function on tx status and on powersave wakeup whenever its internal retry queue is not empty. Also add an extra argument to ieee80211_return_txq to get the same behavior. This fixes an issue on ath9k where tx queues with packets to retry (and no new packets in mac80211) would not get serviced. Fixes: 89cea749 ("ath9k: Switch to mac80211 TXQ scheduling and airtime APIs") Signed-off-by:Felix Fietkau <nbd@nbd.name> Acked-by:
Toke Hiland-Jrgensen <toke@redhat.com> Signed-off-by:
Johannes Berg <johannes.berg@intel.com> BUG=b:131197056 TEST=compile 4.14-gw kernel (cherry picked from commit 2b4a6698) Signed-off-by:
Kan Yan <kyan@google.com> Change-Id: I7e1322d15d02d87443d019c0086b4766827be844 Reviewed-on: https://chromium-review.googlesource.com/1636905 Tested-by:
Kan Yan <kyan@google.com> Commit-Ready: Kan Yan <kyan@google.com> Legacy-Commit-Queue: Commit Bot <commit-bot@chromium.org> Reviewed-by:
Julan Hsu <julanhsu@google.com> Reviewed-by:
Sean Paul <seanpaul@chromium.org> Reviewed-by:
Kan Yan <kyan@chromium.org>
Loading
Please sign in to comment