]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
wifi: mac80211: Don't call fq_flow_idx() for management frames
authorAlexander Wetzel <Alexander@wetzel-home.de>
Thu, 17 Jul 2025 16:25:47 +0000 (18:25 +0200)
committerJohannes Berg <johannes.berg@intel.com>
Fri, 18 Jul 2025 12:24:48 +0000 (14:24 +0200)
skb_get_hash() can only be used when the skb is linked to a netdev
device.

Signed-off-by: Alexander Wetzel <Alexander@wetzel-home.de>
Fixes: 73bc9e0af594 ("mac80211: don't apply flow control on management frames")
Link: https://patch.msgid.link/20250717162547.94582-3-Alexander@wetzel-home.de
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
net/mac80211/tx.c

index adbd640b56725f0446395c80d645c6212f01e61a..baa9d31087733a0653e79884f2d216326a6da896 100644 (file)
@@ -1429,7 +1429,7 @@ static void ieee80211_txq_enqueue(struct ieee80211_local *local,
 {
        struct fq *fq = &local->fq;
        struct fq_tin *tin = &txqi->tin;
-       u32 flow_idx = fq_flow_idx(fq, skb);
+       u32 flow_idx;
 
        ieee80211_set_skb_enqueue_time(skb);
 
@@ -1445,6 +1445,7 @@ static void ieee80211_txq_enqueue(struct ieee80211_local *local,
                        IEEE80211_TX_INTCFL_NEED_TXPROCESSING;
                __skb_queue_tail(&txqi->frags, skb);
        } else {
+               flow_idx = fq_flow_idx(fq, skb);
                fq_tin_enqueue(fq, tin, flow_idx, skb,
                               fq_skb_free_func);
        }