aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/net')
-rw-r--r--drivers/net/wireless/iwlwifi/iwl-tx.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/drivers/net/wireless/iwlwifi/iwl-tx.c b/drivers/net/wireless/iwlwifi/iwl-tx.c
index f72cd0bf6aa3..0182e4da8e35 100644
--- a/drivers/net/wireless/iwlwifi/iwl-tx.c
+++ b/drivers/net/wireless/iwlwifi/iwl-tx.c
@@ -962,16 +962,16 @@ int iwl_tx_skb(struct iwl_priv *priv, struct sk_buff *skb)
962 if (ret) 962 if (ret)
963 return ret; 963 return ret;
964 964
965 if ((iwl_queue_space(q) < q->high_mark) 965 if ((iwl_queue_space(q) < q->high_mark) && priv->mac80211_registered) {
966 && priv->mac80211_registered) {
967 if (wait_write_ptr) { 966 if (wait_write_ptr) {
968 spin_lock_irqsave(&priv->lock, flags); 967 spin_lock_irqsave(&priv->lock, flags);
969 txq->need_update = 1; 968 txq->need_update = 1;
970 iwl_txq_update_write_ptr(priv, txq); 969 iwl_txq_update_write_ptr(priv, txq);
971 spin_unlock_irqrestore(&priv->lock, flags); 970 spin_unlock_irqrestore(&priv->lock, flags);
971 } else {
972 ieee80211_stop_queue(priv->hw,
973 skb_get_queue_mapping(skb));
972 } 974 }
973
974 ieee80211_stop_queue(priv->hw, skb_get_queue_mapping(skb));
975 } 975 }
976 976
977 return 0; 977 return 0;