mac80211: update encap offload patches to the latest version
[openwrt/openwrt.git] / package / kernel / mac80211 / patches / subsys / 323-mac80211-extend-ieee80211_tx_status_ext-to-support-b.patch
diff --git a/package/kernel/mac80211/patches/subsys/323-mac80211-extend-ieee80211_tx_status_ext-to-support-b.patch b/package/kernel/mac80211/patches/subsys/323-mac80211-extend-ieee80211_tx_status_ext-to-support-b.patch
deleted file mode 100644 (file)
index c0f2b7b..0000000
+++ /dev/null
@@ -1,53 +0,0 @@
-From: Felix Fietkau <nbd@nbd.name>
-Date: Fri, 21 Aug 2020 05:49:07 +0200
-Subject: [PATCH] mac80211: extend ieee80211_tx_status_ext to support bulk
- free
-
-Store processed skbs ready to be freed in a list so the driver bulk free them
-
-Signed-off-by: Felix Fietkau <nbd@nbd.name>
----
-
---- a/include/net/mac80211.h
-+++ b/include/net/mac80211.h
-@@ -1092,12 +1092,14 @@ ieee80211_info_get_tx_time_est(struct ie
-  * @info: Basic tx status information
-  * @skb: Packet skb (can be NULL if not provided by the driver)
-  * @rate: The TX rate that was used when sending the packet
-+ * @free_list: list where processed skbs are stored to be free'd by the driver
-  */
- struct ieee80211_tx_status {
-       struct ieee80211_sta *sta;
-       struct ieee80211_tx_info *info;
-       struct sk_buff *skb;
-       struct rate_info *rate;
-+      struct list_head *free_list;
- };
- /**
---- a/net/mac80211/status.c
-+++ b/net/mac80211/status.c
-@@ -1053,7 +1053,10 @@ static void __ieee80211_tx_status(struct
-        * with this test...
-        */
-       if (!local->monitors && (!send_to_cooked || !local->cooked_mntrs)) {
--              dev_kfree_skb(skb);
-+              if (status->free_list)
-+                      list_add_tail(&skb->list, status->free_list);
-+              else
-+                      dev_kfree_skb(skb);
-               return;
-       }
-@@ -1182,7 +1185,10 @@ free:
-               return;
-       ieee80211_report_used_skb(local, skb, false);
--      dev_kfree_skb(skb);
-+      if (status->free_list)
-+              list_add_tail(&skb->list, status->free_list);
-+      else
-+              dev_kfree_skb(skb);
- }
- EXPORT_SYMBOL(ieee80211_tx_status_ext);