aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJohannes Berg <johannes.berg@intel.com>2013-07-14 16:39:20 -0400
committerJohannes Berg <johannes.berg@intel.com>2013-07-16 02:58:19 -0400
commitc82b5a74cc739385db6e4275fe504a0e9469bf01 (patch)
tree6fd33a807fafe5f438238eb4c88b32857c4e19a1
parent5fd91aac790d6817dc99032d2774bc88f6ee4805 (diff)
mac80211: make active monitor injection work w/ HW queue
When a driver (like hwsim) uses HW queue control an active monitor vif needs to be used for the queues, make the code do that. Otherwise we'd bail out and drop the frames. Signed-off-by: Johannes Berg <johannes.berg@intel.com>
-rw-r--r--net/mac80211/tx.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/net/mac80211/tx.c b/net/mac80211/tx.c
index f82301b6cef2..be4d3caf4879 100644
--- a/net/mac80211/tx.c
+++ b/net/mac80211/tx.c
@@ -1272,6 +1272,10 @@ static bool __ieee80211_tx(struct ieee80211_local *local,
1272 1272
1273 switch (sdata->vif.type) { 1273 switch (sdata->vif.type) {
1274 case NL80211_IFTYPE_MONITOR: 1274 case NL80211_IFTYPE_MONITOR:
1275 if (sdata->u.mntr_flags & MONITOR_FLAG_ACTIVE) {
1276 vif = &sdata->vif;
1277 break;
1278 }
1275 sdata = rcu_dereference(local->monitor_sdata); 1279 sdata = rcu_dereference(local->monitor_sdata);
1276 if (sdata) { 1280 if (sdata) {
1277 vif = &sdata->vif; 1281 vif = &sdata->vif;