diff --git a/net/mac80211/tx.c b/net/mac80211/tx.c index 0855cac..221bed6 100644 --- a/net/mac80211/tx.c +++ b/net/mac80211/tx.c @@ -630,6 +630,13 @@ ieee80211_tx_h_sequence(struct ieee80211_tx_data *tx) int tid; /* only for injected frames */ + if (unlikely(info->flags & IEEE80211_TX_CTL_INJECTED) && + !(tx->sdata->u.mntr_flags & MONITOR_FLAG_COOK_FRAMES)) { + if (!ieee80211_has_morefrags(hdr->frame_control)) + info->flags |= IEEE80211_TX_CTL_NO_ACK; + return TX_CONTINUE; + } + if (unlikely(ieee80211_is_ctl(hdr->frame_control))) return TX_CONTINUE;