diff options
Diffstat (limited to 'net/mac80211/tx.c')
-rw-r--r-- | net/mac80211/tx.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/net/mac80211/tx.c b/net/mac80211/tx.c index 9e5dff1c8f27..4e1b2ba122cd 100644 --- a/net/mac80211/tx.c +++ b/net/mac80211/tx.c | |||
@@ -1889,6 +1889,11 @@ void ieee80211_tx_pending(unsigned long data) | |||
1889 | struct ieee80211_tx_info *info = IEEE80211_SKB_CB(skb); | 1889 | struct ieee80211_tx_info *info = IEEE80211_SKB_CB(skb); |
1890 | struct ieee80211_sub_if_data *sdata; | 1890 | struct ieee80211_sub_if_data *sdata; |
1891 | 1891 | ||
1892 | if (WARN_ON(!info->control.vif)) { | ||
1893 | kfree_skb(skb); | ||
1894 | continue; | ||
1895 | } | ||
1896 | |||
1892 | sdata = vif_to_sdata(info->control.vif); | 1897 | sdata = vif_to_sdata(info->control.vif); |
1893 | dev_hold(sdata->dev); | 1898 | dev_hold(sdata->dev); |
1894 | spin_unlock_irqrestore(&local->queue_stop_reason_lock, | 1899 | spin_unlock_irqrestore(&local->queue_stop_reason_lock, |