The commit f02dff93e26b ("mac80211: extend ieee80211_tx_status_ext to 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. Signed-off-by: Hauke Mehrtens <hauke@xxxxxxxxxx> --- patches/0097-skb-list/mac80211-status.patch | 47 +++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 patches/0097-skb-list/mac80211-status.patch diff --git a/patches/0097-skb-list/mac80211-status.patch b/patches/0097-skb-list/mac80211-status.patch new file mode 100644 index 00000000..ab968445 --- /dev/null +++ b/patches/0097-skb-list/mac80211-status.patch @@ -0,0 +1,47 @@ +Make ieee80211_tx_status handling work on older kernel versions + +The commit f02dff93e26b ("mac80211: extend ieee80211_tx_status_ext to +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. + +--- a/include/net/mac80211.h ++++ b/include/net/mac80211.h +@@ -1132,7 +1132,11 @@ struct ieee80211_tx_status { + struct ieee80211_tx_info *info; + struct sk_buff *skb; + struct rate_info *rate; ++#if LINUX_VERSION_IS_GEQ(4,19,0) + struct list_head *free_list; ++#else ++ struct sk_buff_head *free_list; ++#endif + }; + + /** +--- a/net/mac80211/status.c ++++ b/net/mac80211/status.c +@@ -1033,7 +1033,11 @@ static void __ieee80211_tx_status(struct + */ + if (!local->monitors && (!send_to_cooked || !local->cooked_mntrs)) { + if (status->free_list) ++#if LINUX_VERSION_IS_GEQ(4,19,0) + list_add_tail(&skb->list, status->free_list); ++#else ++ __skb_queue_tail(status->free_list, skb); ++#endif + else + dev_kfree_skb(skb); + return; +@@ -1183,7 +1187,11 @@ free: + + ieee80211_report_used_skb(local, skb, false); + if (status->free_list) ++#if LINUX_VERSION_IS_GEQ(4,19,0) + list_add_tail(&skb->list, status->free_list); ++#else ++ __skb_queue_tail(status->free_list, skb); ++#endif + else + dev_kfree_skb(skb); + } -- 2.20.1 -- To unsubscribe from this list: send the line "unsubscribe backports" in