summaryrefslogtreecommitdiff
path: root/net/mac80211
diff options
context:
space:
mode:
authorJohannes Berg <johannes.berg@intel.com>2013-07-14 20:39:20 (GMT)
committerJohannes Berg <johannes.berg@intel.com>2013-07-16 06:58:19 (GMT)
commitc82b5a74cc739385db6e4275fe504a0e9469bf01 (patch)
tree6fd33a807fafe5f438238eb4c88b32857c4e19a1 /net/mac80211
parent5fd91aac790d6817dc99032d2774bc88f6ee4805 (diff)
downloadlinux-fsl-qoriq-c82b5a74cc739385db6e4275fe504a0e9469bf01.tar.xz
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>
Diffstat (limited to 'net/mac80211')
-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 f82301b..be4d3ca 100644
--- a/net/mac80211/tx.c
+++ b/net/mac80211/tx.c
@@ -1272,6 +1272,10 @@ static bool __ieee80211_tx(struct ieee80211_local *local,
switch (sdata->vif.type) {
case NL80211_IFTYPE_MONITOR:
+ if (sdata->u.mntr_flags & MONITOR_FLAG_ACTIVE) {
+ vif = &sdata->vif;
+ break;
+ }
sdata = rcu_dereference(local->monitor_sdata);
if (sdata) {
vif = &sdata->vif;