aboutsummaryrefslogtreecommitdiffstats
path: root/package/kernel/mac80211/patches/subsys/306-mac80211-move-store-skb-ack-code-to-its-own-function.patch
diff options
context:
space:
mode:
authorHauke Mehrtens <hauke@hauke-m.de>2020-03-13 14:26:51 +0100
committerHauke Mehrtens <hauke@hauke-m.de>2020-05-21 14:39:34 +0200
commit9ca21dc7d59e2e0c7f97e440e71ea93c5275219b (patch)
tree8e27217bd2727625432c9c0c28ef39fcdd0639aa /package/kernel/mac80211/patches/subsys/306-mac80211-move-store-skb-ack-code-to-its-own-function.patch
parenta4b50c4bce7b015c9d7c7d599ea29994a55f3f1f (diff)
downloadupstream-9ca21dc7d59e2e0c7f97e440e71ea93c5275219b.tar.gz
upstream-9ca21dc7d59e2e0c7f97e440e71ea93c5275219b.tar.bz2
upstream-9ca21dc7d59e2e0c7f97e440e71ea93c5275219b.zip
mac80211: Update to version 5.5.19
This updates the mac80211 backport. The removed patches are already integrated in the upstream version. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Diffstat (limited to 'package/kernel/mac80211/patches/subsys/306-mac80211-move-store-skb-ack-code-to-its-own-function.patch')
-rw-r--r--package/kernel/mac80211/patches/subsys/306-mac80211-move-store-skb-ack-code-to-its-own-function.patch78
1 files changed, 0 insertions, 78 deletions
diff --git a/package/kernel/mac80211/patches/subsys/306-mac80211-move-store-skb-ack-code-to-its-own-function.patch b/package/kernel/mac80211/patches/subsys/306-mac80211-move-store-skb-ack-code-to-its-own-function.patch
deleted file mode 100644
index 4f0a699c80..0000000000
--- a/package/kernel/mac80211/patches/subsys/306-mac80211-move-store-skb-ack-code-to-its-own-function.patch
+++ /dev/null
@@ -1,78 +0,0 @@
-From: John Crispin <john@phrozen.org>
-Date: Tue, 29 Oct 2019 10:13:02 +0100
-Subject: [PATCH] mac80211: move store skb ack code to its own function
-
-This patch moves the code handling SKBTX_WIFI_STATUS inside the TX path
-into an extra function. This allows us to reuse it inside the 802.11 encap
-offloading datapath.
-
-Signed-off-by: John Crispin <john@phrozen.org>
-Link: https://lore.kernel.org/r/20191029091304.7330-2-john@phrozen.org
-Signed-off-by: Johannes Berg <johannes.berg@intel.com>
----
-
---- a/net/mac80211/tx.c
-+++ b/net/mac80211/tx.c
-@@ -2445,6 +2445,33 @@ static int ieee80211_lookup_ra_sta(struc
- return 0;
- }
-
-+static int ieee80211_store_ack_skb(struct ieee80211_local *local,
-+ struct sk_buff *skb,
-+ u32 *info_flags)
-+{
-+ struct sk_buff *ack_skb = skb_clone_sk(skb);
-+ u16 info_id = 0;
-+
-+ if (ack_skb) {
-+ unsigned long flags;
-+ int id;
-+
-+ spin_lock_irqsave(&local->ack_status_lock, flags);
-+ id = idr_alloc(&local->ack_status_frames, ack_skb,
-+ 1, 0x10000, GFP_ATOMIC);
-+ spin_unlock_irqrestore(&local->ack_status_lock, flags);
-+
-+ if (id >= 0) {
-+ info_id = id;
-+ *info_flags |= IEEE80211_TX_CTL_REQ_TX_STATUS;
-+ } else {
-+ kfree_skb(ack_skb);
-+ }
-+ }
-+
-+ return info_id;
-+}
-+
- /**
- * ieee80211_build_hdr - build 802.11 header in the given frame
- * @sdata: virtual interface to build the header for
-@@ -2738,26 +2765,8 @@ static struct sk_buff *ieee80211_build_h
- }
-
- if (unlikely(!multicast && skb->sk &&
-- skb_shinfo(skb)->tx_flags & SKBTX_WIFI_STATUS)) {
-- struct sk_buff *ack_skb = skb_clone_sk(skb);
--
-- if (ack_skb) {
-- unsigned long flags;
-- int id;
--
-- spin_lock_irqsave(&local->ack_status_lock, flags);
-- id = idr_alloc(&local->ack_status_frames, ack_skb,
-- 1, 0x10000, GFP_ATOMIC);
-- spin_unlock_irqrestore(&local->ack_status_lock, flags);
--
-- if (id >= 0) {
-- info_id = id;
-- info_flags |= IEEE80211_TX_CTL_REQ_TX_STATUS;
-- } else {
-- kfree_skb(ack_skb);
-- }
-- }
-- }
-+ skb_shinfo(skb)->tx_flags & SKBTX_WIFI_STATUS))
-+ info_id = ieee80211_store_ack_skb(local, skb, &info_flags);
-
- /*
- * If the skb is shared we need to obtain our own copy.