diff --git a/package/kernel/mac80211/patches/005-backport_skb_get_hash_perturb.patch b/package/kernel/mac80211/patches/005-backport_skb_get_hash_perturb.patch new file mode 100644 index 0000000000..8212910577 --- /dev/null +++ b/package/kernel/mac80211/patches/005-backport_skb_get_hash_perturb.patch @@ -0,0 +1,28 @@ +--- a/backport-include/linux/skbuff.h ++++ b/backport-include/linux/skbuff.h +@@ -1,6 +1,8 @@ + #ifndef __BACKPORT_SKBUFF_H + #define __BACKPORT_SKBUFF_H + #include_next ++#include ++#include + #include + #include + +@@ -305,6 +307,16 @@ static inline void skb_free_frag(void *d + { + put_page(virt_to_head_page(data)); + } ++ ++static inline u32 skb_get_hash_perturb(struct sk_buff *skb, u32 key) ++{ ++ struct flow_keys keys; ++ ++ skb_flow_dissect(skb, &keys); ++ return jhash_3words((__force u32)keys.dst, ++ (__force u32)keys.src ^ keys.ip_proto, ++ (__force u32)keys.ports, key); ++} + #endif + + #endif /* __BACKPORT_SKBUFF_H */