--- a/net/mac80211/tx.c
+++ b/net/mac80211/tx.c
-@@ -1595,6 +1595,10 @@ static void ieee80211_xmit(struct ieee80
+@@ -1596,6 +1596,10 @@ static void ieee80211_xmit(struct ieee80
return;
}
+ /* Older kernels do not have the select_queue callback */
+ skb_set_queue_mapping(skb, ieee80211_select_queue(sdata, skb));
+#endif
- ieee80211_set_qos_hdr(local, skb);
+ ieee80211_set_qos_hdr(sdata, skb);
ieee80211_tx(sdata, skb, false);
rcu_read_unlock();
-@@ -2108,7 +2112,14 @@ void ieee80211_tx_pending(unsigned long
+@@ -2113,7 +2117,14 @@ void ieee80211_tx_pending(unsigned long
if (skb_queue_empty(&local->pending[i]))
list_for_each_entry_rcu(sdata, &local->interfaces, list)