mac80211: backport an upstream fix for queue start/stop handling
Fixes issues with 802.11s Signed-off-by: Felix Fietkau <nbd@nbd.name>
This commit is contained in:
parent
190db43615
commit
cffeb31107
1 changed files with 29 additions and 0 deletions
|
@ -0,0 +1,29 @@
|
|||
From: Johannes Berg <johannes.berg@intel.com>
|
||||
Date: Wed, 29 Mar 2017 14:15:24 +0200
|
||||
Subject: [PATCH] mac80211: unconditionally start new netdev queues with iTXQ
|
||||
support
|
||||
|
||||
When internal mac80211 TXQs aren't supported, netdev queues must
|
||||
always started out started even when driver queues are stopped
|
||||
while the interface is added. This is necessary because with the
|
||||
internal TXQ support netdev queues are never stopped and packet
|
||||
scheduling/dropping is done in mac80211.
|
||||
|
||||
Cc: stable@vger.kernel.org # 4.9+
|
||||
Fixes: 80a83cfc434b1 ("mac80211: skip netdev queue control with software queuing")
|
||||
Reported-and-tested-by: Sven Eckelmann <sven.eckelmann@openmesh.com>
|
||||
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
|
||||
---
|
||||
|
||||
--- a/net/mac80211/iface.c
|
||||
+++ b/net/mac80211/iface.c
|
||||
@@ -727,7 +727,8 @@ int ieee80211_do_open(struct wireless_de
|
||||
ieee80211_recalc_ps(local);
|
||||
|
||||
if (sdata->vif.type == NL80211_IFTYPE_MONITOR ||
|
||||
- sdata->vif.type == NL80211_IFTYPE_AP_VLAN) {
|
||||
+ sdata->vif.type == NL80211_IFTYPE_AP_VLAN ||
|
||||
+ local->ops->wake_tx_queue) {
|
||||
/* XXX: for AP_VLAN, actually track AP queues */
|
||||
netif_tx_start_all_queues(dev);
|
||||
} else if (dev) {
|
Loading…
Reference in a new issue