From 1f68aac9d7b15013407afca581c5da09b45b9afa Mon Sep 17 00:00:00 2001 From: Felix Fietkau Date: Sat, 16 Mar 2019 18:38:46 +0100 Subject: kernel: backport flow dissector batman-adv support Improves performance on multicore systems handling batman-adv traffic Signed-off-by: Felix Fietkau --- ...man-adv-Remove-usage-of-BIT-x-in-packet.h.patch | 72 ++++++++++++++++++++++ 1 file changed, 72 insertions(+) create mode 100644 target/linux/generic/backport-4.14/271-batman-adv-Remove-usage-of-BIT-x-in-packet.h.patch (limited to 'target/linux/generic/backport-4.14/271-batman-adv-Remove-usage-of-BIT-x-in-packet.h.patch') diff --git a/target/linux/generic/backport-4.14/271-batman-adv-Remove-usage-of-BIT-x-in-packet.h.patch b/target/linux/generic/backport-4.14/271-batman-adv-Remove-usage-of-BIT-x-in-packet.h.patch new file mode 100644 index 0000000000..5466d234d8 --- /dev/null +++ b/target/linux/generic/backport-4.14/271-batman-adv-Remove-usage-of-BIT-x-in-packet.h.patch @@ -0,0 +1,72 @@ +From: Sven Eckelmann +Date: Thu, 21 Dec 2017 10:17:39 +0100 +Subject: [PATCH] batman-adv: Remove usage of BIT(x) in packet.h + +The BIT(x) macro is no longer available for uapi headers because it is +defined outside of it (linux/bitops.h). The use of it must therefore be +avoided and replaced by an appropriate other representation. + +Signed-off-by: Sven Eckelmann +Signed-off-by: David S. Miller +--- + +--- a/net/batman-adv/packet.h ++++ b/net/batman-adv/packet.h +@@ -19,7 +19,6 @@ + #define _NET_BATMAN_ADV_PACKET_H_ + + #include +-#include + #include + #include + +@@ -85,9 +84,9 @@ enum batadv_subtype { + * one hop neighbor on the interface where it was originally received. + */ + enum batadv_iv_flags { +- BATADV_NOT_BEST_NEXT_HOP = BIT(0), +- BATADV_PRIMARIES_FIRST_HOP = BIT(1), +- BATADV_DIRECTLINK = BIT(2), ++ BATADV_NOT_BEST_NEXT_HOP = 1UL << 0, ++ BATADV_PRIMARIES_FIRST_HOP = 1UL << 1, ++ BATADV_DIRECTLINK = 1UL << 2, + }; + + /* ICMP message types */ +@@ -108,9 +107,9 @@ enum batadv_icmp_packettype { + * @BATADV_MCAST_WANT_ALL_IPV6: we want all IPv6 multicast packets + */ + enum batadv_mcast_flags { +- BATADV_MCAST_WANT_ALL_UNSNOOPABLES = BIT(0), +- BATADV_MCAST_WANT_ALL_IPV4 = BIT(1), +- BATADV_MCAST_WANT_ALL_IPV6 = BIT(2), ++ BATADV_MCAST_WANT_ALL_UNSNOOPABLES = 1UL << 0, ++ BATADV_MCAST_WANT_ALL_IPV4 = 1UL << 1, ++ BATADV_MCAST_WANT_ALL_IPV6 = 1UL << 2, + }; + + /* tt data subtypes */ +@@ -124,10 +123,10 @@ enum batadv_mcast_flags { + * @BATADV_TT_FULL_TABLE: contains full table to replace existing table + */ + enum batadv_tt_data_flags { +- BATADV_TT_OGM_DIFF = BIT(0), +- BATADV_TT_REQUEST = BIT(1), +- BATADV_TT_RESPONSE = BIT(2), +- BATADV_TT_FULL_TABLE = BIT(4), ++ BATADV_TT_OGM_DIFF = 1UL << 0, ++ BATADV_TT_REQUEST = 1UL << 1, ++ BATADV_TT_RESPONSE = 1UL << 2, ++ BATADV_TT_FULL_TABLE = 1UL << 4, + }; + + /** +@@ -135,7 +134,7 @@ enum batadv_tt_data_flags { + * @BATADV_VLAN_HAS_TAG: whether the field contains a valid vlan tag or not + */ + enum batadv_vlan_flags { +- BATADV_VLAN_HAS_TAG = BIT(15), ++ BATADV_VLAN_HAS_TAG = 1UL << 15, + }; + + /* claim frame types for the bridge loop avoidance */ -- cgit v1.2.3