aboutsummaryrefslogtreecommitdiffstats
path: root/net/mac80211/rx.c
diff options
context:
space:
mode:
Diffstat (limited to 'net/mac80211/rx.c')
-rw-r--r--net/mac80211/rx.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/net/mac80211/rx.c b/net/mac80211/rx.c
index f195705146bd..25a669c86e14 100644
--- a/net/mac80211/rx.c
+++ b/net/mac80211/rx.c
@@ -2442,6 +2442,18 @@ void __ieee80211_rx(struct ieee80211_hw *hw, struct sk_buff *skb)
2442 return; 2442 return;
2443 } 2443 }
2444 2444
2445 /*
2446 * If we're suspending, it is possible although not too likely
2447 * that we'd be receiving frames after having already partially
2448 * quiesced the stack. We can't process such frames then since
2449 * that might, for example, cause stations to be added or other
2450 * driver callbacks be invoked.
2451 */
2452 if (unlikely(local->quiescing || local->suspended)) {
2453 kfree_skb(skb);
2454 return;
2455 }
2456
2445 if (status->flag & RX_FLAG_HT) { 2457 if (status->flag & RX_FLAG_HT) {
2446 /* rate_idx is MCS index */ 2458 /* rate_idx is MCS index */
2447 if (WARN_ON(status->rate_idx < 0 || 2459 if (WARN_ON(status->rate_idx < 0 ||