mirror of
https://git.openwrt.org/openwrt/openwrt.git
synced 2025-10-08 21:50:44 +00:00
33 lines
1.1 KiB
Diff
33 lines
1.1 KiB
Diff
From: Remi Pommarel <repk@triplefau.lt>
|
|
Date: Thu, 17 Jul 2025 17:45:28 +0200
|
|
Subject: [PATCH] wifi: mac80211: Check 802.11 encaps offloading in
|
|
ieee80211_tx_h_select_key()
|
|
|
|
With 802.11 encapsulation offloading, ieee80211_tx_h_select_key() is
|
|
called on 802.3 frames. In that case do not try to use skb data as
|
|
valid 802.11 headers.
|
|
|
|
Reported-by: Bert Karwatzki <spasswolf@web.de>
|
|
Closes: https://lore.kernel.org/linux-wireless/20250410215527.3001-1-spasswolf@web.de
|
|
Fixes: bb42f2d13ffc ("mac80211: Move reorder-sensitive TX handlers to after TXQ dequeue")
|
|
Signed-off-by: Remi Pommarel <repk@triplefau.lt>
|
|
Link: https://patch.msgid.link/1af4b5b903a5fca5ebe67333d5854f93b2be5abe.1752765971.git.repk@triplefau.lt
|
|
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
|
|
---
|
|
|
|
--- a/net/mac80211/tx.c
|
|
+++ b/net/mac80211/tx.c
|
|
@@ -612,6 +612,12 @@ ieee80211_tx_h_select_key(struct ieee802
|
|
else
|
|
tx->key = NULL;
|
|
|
|
+ if (info->flags & IEEE80211_TX_CTL_HW_80211_ENCAP) {
|
|
+ if (tx->key && tx->key->flags & KEY_FLAG_UPLOADED_TO_HARDWARE)
|
|
+ info->control.hw_key = &tx->key->conf;
|
|
+ return TX_CONTINUE;
|
|
+ }
|
|
+
|
|
if (tx->key) {
|
|
bool skip_hw = false;
|
|
|