mac80211: fix tx queue allocation for active monitor interfaces
Fixes a crash with drivers like ath9k Signed-off-by: Felix Fietkau <nbd@nbd.name>
This commit is contained in:
		| @@ -0,0 +1,26 @@ | ||||
| From: Felix Fietkau <nbd@nbd.name> | ||||
| Date: Sat, 22 Sep 2018 15:05:59 +0200 | ||||
| Subject: [PATCH] mac80211: allocate TXQs for active monitor interfaces | ||||
|  | ||||
| Monitor mode interfaces with the active flag are passed down to the driver. | ||||
| Drivers using TXQ expect that all interfaces have allocated TXQs before | ||||
| they get added. | ||||
|  | ||||
| Fixes: 79af1f866193d ("mac80211: avoid allocating TXQs that won't be used") | ||||
| Cc: stable@vger.kernel.org | ||||
| Reported-by: Catrinel Catrinescu <cc@80211.de> | ||||
| Signed-off-by: Felix Fietkau <nbd@nbd.name> | ||||
| --- | ||||
|  | ||||
| --- a/net/mac80211/iface.c | ||||
| +++ b/net/mac80211/iface.c | ||||
| @@ -1816,7 +1816,8 @@ int ieee80211_if_add(struct ieee80211_lo | ||||
|   | ||||
|  		if (local->ops->wake_tx_queue && | ||||
|  		    type != NL80211_IFTYPE_AP_VLAN && | ||||
| -		    type != NL80211_IFTYPE_MONITOR) | ||||
| +		    (type != NL80211_IFTYPE_MONITOR || | ||||
| +		     (params->flags & MONITOR_FLAG_ACTIVE))) | ||||
|  			txq_size += sizeof(struct txq_info) + | ||||
|  				    local->hw.txq_data_size; | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Felix Fietkau
					Felix Fietkau