From: Gregory Greenman <gregory.greenman@xxxxxxxxx> Update for some changes in struct ieee80211_tx_status. Signed-off-by: Gregory Greenman <gregory.greenman@xxxxxxxxx> Signed-off-by: Johannes Berg <johannes.berg@xxxxxxxxx> --- patches/0097-skb-list/mac80211-status.patch | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/patches/0097-skb-list/mac80211-status.patch b/patches/0097-skb-list/mac80211-status.patch index 04d1a6af9457..7edff7f7ede4 100644 --- a/patches/0097-skb-list/mac80211-status.patch +++ b/patches/0097-skb-list/mac80211-status.patch @@ -5,12 +5,14 @@ support bulk free") makes use of the list attribute in the skb, but this is not available in kernel < 4.19, use the sk_buff_head instead on these kernel versions. +diff --git a/include/net/mac80211.h b/include/net/mac80211.h +index 47642b020706..1abda970a6e6 100644 --- a/include/net/mac80211.h +++ b/include/net/mac80211.h -@@ -1137,7 +1137,11 @@ struct ieee80211_tx_status { - struct ieee80211_tx_info *info; - struct sk_buff *skb; - struct rate_info *rate; +@@ -1178,7 +1178,11 @@ struct ieee80211_tx_status { + struct ieee80211_rate_status *rates; + u8 n_rates; + +#if LINUX_VERSION_IS_GEQ(4,19,0) struct list_head *free_list; +#else @@ -19,9 +21,11 @@ kernel versions. }; /** +diff --git a/net/mac80211/status.c b/net/mac80211/status.c +index e69272139437..549d50aac4b0 100644 --- a/net/mac80211/status.c +++ b/net/mac80211/status.c -@@ -1060,7 +1060,11 @@ static void __ieee80211_tx_status(struct +@@ -1075,7 +1075,11 @@ static void __ieee80211_tx_status(struct ieee80211_hw *hw, */ if (!local->monitors && (!send_to_cooked || !local->cooked_mntrs)) { if (status->free_list) @@ -33,7 +37,7 @@ kernel versions. else dev_kfree_skb(skb); return; -@@ -1210,7 +1214,11 @@ free: +@@ -1228,7 +1232,11 @@ void ieee80211_tx_status_ext(struct ieee80211_hw *hw, ieee80211_report_used_skb(local, skb, false); if (status->free_list) -- 2.45.1