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 66c797cc85ce..b6ddde3848fb 100644
--- a/net/mac80211/rx.c
+++ b/net/mac80211/rx.c
@@ -2439,6 +2439,18 @@ void __ieee80211_rx(struct ieee80211_hw *hw, struct sk_buff *skb)
2439 return; 2439 return;
2440 } 2440 }
2441 2441
2442 /*
2443 * If we're suspending, it is possible although not too likely
2444 * that we'd be receiving frames after having already partially
2445 * quiesced the stack. We can't process such frames then since
2446 * that might, for example, cause stations to be added or other
2447 * driver callbacks be invoked.
2448 */
2449 if (unlikely(local->quiescing || local->suspended)) {
2450 kfree_skb(skb);
2451 return;
2452 }
2453
2442 if (status->flag & RX_FLAG_HT) { 2454 if (status->flag & RX_FLAG_HT) {
2443 /* rate_idx is MCS index */ 2455 /* rate_idx is MCS index */
2444 if (WARN_ON(status->rate_idx < 0 || 2456 if (WARN_ON(status->rate_idx < 0 ||