diff options
Diffstat (limited to 'net')
-rw-r--r-- | net/mac80211/tx.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/net/mac80211/tx.c b/net/mac80211/tx.c index 68cbd0095429..6fad8fac3784 100644 --- a/net/mac80211/tx.c +++ b/net/mac80211/tx.c | |||
@@ -1227,9 +1227,10 @@ static bool ieee80211_tx_frags(struct ieee80211_local *local, | |||
1227 | * queue is woken again. | 1227 | * queue is woken again. |
1228 | */ | 1228 | */ |
1229 | if (txpending) | 1229 | if (txpending) |
1230 | skb_queue_splice(skbs, &local->pending[q]); | 1230 | skb_queue_splice_init(skbs, &local->pending[q]); |
1231 | else | 1231 | else |
1232 | skb_queue_splice_tail(skbs, &local->pending[q]); | 1232 | skb_queue_splice_tail_init(skbs, |
1233 | &local->pending[q]); | ||
1233 | 1234 | ||
1234 | spin_unlock_irqrestore(&local->queue_stop_reason_lock, | 1235 | spin_unlock_irqrestore(&local->queue_stop_reason_lock, |
1235 | flags); | 1236 | flags); |
@@ -1301,7 +1302,7 @@ static bool __ieee80211_tx(struct ieee80211_local *local, | |||
1301 | ieee80211_tpt_led_trig_tx(local, fc, led_len); | 1302 | ieee80211_tpt_led_trig_tx(local, fc, led_len); |
1302 | ieee80211_led_tx(local, 1); | 1303 | ieee80211_led_tx(local, 1); |
1303 | 1304 | ||
1304 | WARN_ON(!skb_queue_empty(skbs)); | 1305 | WARN_ON_ONCE(!skb_queue_empty(skbs)); |
1305 | 1306 | ||
1306 | return result; | 1307 | return result; |
1307 | } | 1308 | } |