From c233bc3581e33c819466f2248eb7218b87b54bd2 Mon Sep 17 00:00:00 2001 From: Dastin Wilski Date: Wed, 30 Mar 2022 14:06:44 +0200 Subject: dpdk: compatibility layer for dpdk 22.03 bump New version of dpdk changes some macros names. This patch ensures VPP will be compatible with older dpdk versions. Type: improvement Signed-off-by: Dastin Wilski Change-Id: I3d9736278e70064610a1dcad5f2d2f6eb26e0d4b --- src/plugins/dpdk/device/dpdk.h | 52 +++++++++++++++---------------- src/plugins/dpdk/device/dpdk_priv.h | 61 +++++++++++++++++++++++++++++++++++++ 2 files changed, 87 insertions(+), 26 deletions(-) (limited to 'src/plugins/dpdk/device') diff --git a/src/plugins/dpdk/device/dpdk.h b/src/plugins/dpdk/device/dpdk.h index 196f68f9756..6f3680c17a1 100644 --- a/src/plugins/dpdk/device/dpdk.h +++ b/src/plugins/dpdk/device/dpdk.h @@ -393,32 +393,32 @@ typedef enum void dpdk_update_link_state (dpdk_device_t * xd, f64 now); #define foreach_dpdk_rss_hf \ - _ (0, ETH_RSS_FRAG_IPV4, "ipv4-frag") \ - _ (1, ETH_RSS_NONFRAG_IPV4_TCP, "ipv4-tcp") \ - _ (2, ETH_RSS_NONFRAG_IPV4_UDP, "ipv4-udp") \ - _ (3, ETH_RSS_NONFRAG_IPV4_SCTP, "ipv4-sctp") \ - _ (4, ETH_RSS_NONFRAG_IPV4_OTHER, "ipv4-other") \ - _ (5, ETH_RSS_IPV4, "ipv4") \ - _ (6, ETH_RSS_IPV6_TCP_EX, "ipv6-tcp-ex") \ - _ (7, ETH_RSS_IPV6_UDP_EX, "ipv6-udp-ex") \ - _ (8, ETH_RSS_FRAG_IPV6, "ipv6-frag") \ - _ (9, ETH_RSS_NONFRAG_IPV6_TCP, "ipv6-tcp") \ - _ (10, ETH_RSS_NONFRAG_IPV6_UDP, "ipv6-udp") \ - _ (11, ETH_RSS_NONFRAG_IPV6_SCTP, "ipv6-sctp") \ - _ (12, ETH_RSS_NONFRAG_IPV6_OTHER, "ipv6-other") \ - _ (13, ETH_RSS_IPV6_EX, "ipv6-ex") \ - _ (14, ETH_RSS_IPV6, "ipv6") \ - _ (15, ETH_RSS_L2_PAYLOAD, "l2-payload") \ - _ (16, ETH_RSS_PORT, "port") \ - _ (17, ETH_RSS_VXLAN, "vxlan") \ - _ (18, ETH_RSS_GENEVE, "geneve") \ - _ (19, ETH_RSS_NVGRE, "nvgre") \ - _ (20, ETH_RSS_GTPU, "gtpu") \ - _ (21, ETH_RSS_ESP, "esp") \ - _ (60, ETH_RSS_L4_DST_ONLY, "l4-dst-only") \ - _ (61, ETH_RSS_L4_SRC_ONLY, "l4-src-only") \ - _ (62, ETH_RSS_L3_DST_ONLY, "l3-dst-only") \ - _ (63, ETH_RSS_L3_SRC_ONLY, "l3-src-only") + _ (0, RTE_ETH_RSS_FRAG_IPV4, "ipv4-frag") \ + _ (1, RTE_ETH_RSS_NONFRAG_IPV4_TCP, "ipv4-tcp") \ + _ (2, RTE_ETH_RSS_NONFRAG_IPV4_UDP, "ipv4-udp") \ + _ (3, RTE_ETH_RSS_NONFRAG_IPV4_SCTP, "ipv4-sctp") \ + _ (4, RTE_ETH_RSS_NONFRAG_IPV4_OTHER, "ipv4-other") \ + _ (5, RTE_ETH_RSS_IPV4, "ipv4") \ + _ (6, RTE_ETH_RSS_IPV6_TCP_EX, "ipv6-tcp-ex") \ + _ (7, RTE_ETH_RSS_IPV6_UDP_EX, "ipv6-udp-ex") \ + _ (8, RTE_ETH_RSS_FRAG_IPV6, "ipv6-frag") \ + _ (9, RTE_ETH_RSS_NONFRAG_IPV6_TCP, "ipv6-tcp") \ + _ (10, RTE_ETH_RSS_NONFRAG_IPV6_UDP, "ipv6-udp") \ + _ (11, RTE_ETH_RSS_NONFRAG_IPV6_SCTP, "ipv6-sctp") \ + _ (12, RTE_ETH_RSS_NONFRAG_IPV6_OTHER, "ipv6-other") \ + _ (13, RTE_ETH_RSS_IPV6_EX, "ipv6-ex") \ + _ (14, RTE_ETH_RSS_IPV6, "ipv6") \ + _ (15, RTE_ETH_RSS_L2_PAYLOAD, "l2-payload") \ + _ (16, RTE_ETH_RSS_PORT, "port") \ + _ (17, RTE_ETH_RSS_VXLAN, "vxlan") \ + _ (18, RTE_ETH_RSS_GENEVE, "geneve") \ + _ (19, RTE_ETH_RSS_NVGRE, "nvgre") \ + _ (20, RTE_ETH_RSS_GTPU, "gtpu") \ + _ (21, RTE_ETH_RSS_ESP, "esp") \ + _ (60, RTE_ETH_RSS_L4_DST_ONLY, "l4-dst-only") \ + _ (61, RTE_ETH_RSS_L4_SRC_ONLY, "l4-src-only") \ + _ (62, RTE_ETH_RSS_L3_DST_ONLY, "l3-dst-only") \ + _ (63, RTE_ETH_RSS_L3_SRC_ONLY, "l3-src-only") format_function_t format_dpdk_device_name; format_function_t format_dpdk_device; diff --git a/src/plugins/dpdk/device/dpdk_priv.h b/src/plugins/dpdk/device/dpdk_priv.h index ed30cd8cd23..013ab41637e 100644 --- a/src/plugins/dpdk/device/dpdk_priv.h +++ b/src/plugins/dpdk/device/dpdk_priv.h @@ -159,6 +159,67 @@ dpdk_update_counters (dpdk_device_t * xd, f64 now) #define RTE_MBUF_F_TX_UDP_CKSUM PKT_TX_UDP_CKSUM #define RTE_MBUF_F_TX_UDP_SEG PKT_TX_UDP_SEG #define RTE_MBUF_F_TX_VLAN PKT_TX_VLAN +#define RTE_ETH_RSS_FRAG_IPV4 ETH_RSS_FRAG_IPV4 +#define RTE_ETH_RSS_NONFRAG_IPV4_TCP ETH_RSS_NONFRAG_IPV4_TCP +#define RTE_ETH_RSS_NONFRAG_IPV4_UDP ETH_RSS_NONFRAG_IPV4_UDP +#define RTE_ETH_RSS_NONFRAG_IPV4_SCTP ETH_RSS_NONFRAG_IPV4_SCTP +#define RTE_ETH_RSS_NONFRAG_IPV4_OTHER ETH_RSS_NONFRAG_IPV4_OTHER +#define RTE_ETH_RSS_IPV4 ETH_RSS_IPV4 +#define RTE_ETH_RSS_IPV6_TCP_EX ETH_RSS_IPV6_TCP_EX +#define RTE_ETH_RSS_IPV6_UDP_EX ETH_RSS_IPV6_UDP_EX +#define RTE_ETH_RSS_FRAG_IPV6 ETH_RSS_FRAG_IPV6 +#define RTE_ETH_RSS_NONFRAG_IPV6_TCP ETH_RSS_NONFRAG_IPV6_TCP +#define RTE_ETH_RSS_NONFRAG_IPV6_UDP ETH_RSS_NONFRAG_IPV6_UDP +#define RTE_ETH_RSS_NONFRAG_IPV6_SCTP ETH_RSS_NONFRAG_IPV6_SCTP +#define RTE_ETH_RSS_NONFRAG_IPV6_OTHER ETH_RSS_NONFRAG_IPV6_OTHER +#define RTE_ETH_RSS_IPV6_EX ETH_RSS_IPV6_EX +#define RTE_ETH_RSS_IPV6 ETH_RSS_IPV6 +#define RTE_ETH_RSS_L2_PAYLOAD ETH_RSS_L2_PAYLOAD +#define RTE_ETH_RSS_PORT ETH_RSS_PORT +#define RTE_ETH_RSS_VXLAN ETH_RSS_VXLAN +#define RTE_ETH_RSS_GENEVE ETH_RSS_GENEVE +#define RTE_ETH_RSS_NVGRE ETH_RSS_NVGRE +#define RTE_ETH_RSS_GTPU ETH_RSS_GTPU +#define RTE_ETH_RSS_ESP ETH_RSS_ESP +#define RTE_ETH_RSS_L4_DST_ONLY ETH_RSS_L4_DST_ONLY +#define RTE_ETH_RSS_L4_SRC_ONLY ETH_RSS_L4_SRC_ONLY +#define RTE_ETH_RSS_L3_DST_ONL ETH_RSS_L3_DST_ONL +#define RTE_ETH_RSS_L3_SRC_ONLY ETH_RSS_L3_SRC_ONLY +#define RTE_ETH_RETA_GROUP_SIZE RTE_RETA_GROUP_SIZE +#define RTE_ETH_TX_OFFLOAD_IPV4_CKSUM DEV_TX_OFFLOAD_IPV4_CKSUM +#define RTE_ETH_TX_OFFLOAD_TCP_CKSUM DEV_TX_OFFLOAD_TCP_CKSUM +#define RTE_ETH_TX_OFFLOAD_UDP_CKSUM DEV_TX_OFFLOAD_UDP_CKSUM +#define RTE_ETH_TX_OFFLOAD_OUTER_IPV4_CKSUM DEV_TX_OFFLOAD_OUTER_IPV4_CKSUM +#define RTE_ETH_TX_OFFLOAD_OUTER_UDP_CKSUM DEV_TX_OFFLOAD_OUTER_UDP_CKSUM +#define RTE_ETH_TX_OFFLOAD_TCP_TSO DEV_TX_OFFLOAD_TCP_TSO +#define RTE_ETH_TX_OFFLOAD_VXLAN_TNL_TSO DEV_TX_OFFLOAD_VXLAN_TNL_TSO +#define RTE_ETH_TX_OFFLOAD_MULTI_SEGS DEV_TX_OFFLOAD_MULTI_SEGS +#define RTE_ETH_RX_OFFLOAD_IPV4_CKSUM DEV_RX_OFFLOAD_IPV4_CKSUM +#define RTE_ETH_RX_OFFLOAD_SCATTER DEV_RX_OFFLOAD_SCATTER +#define RTE_ETH_RX_OFFLOAD_TCP_LRO DEV_RX_OFFLOAD_TCP_LRO +#define RTE_ETH_MQ_RX_RSS ETH_MQ_RX_RSS +#define RTE_ETH_RX_OFFLOAD_TCP_CKSUM DEV_RX_OFFLOAD_TCP_CKSUM +#define RTE_ETH_RX_OFFLOAD_UDP_CKSUM DEV_RX_OFFLOAD_UDP_CKSUM +#define RTE_ETH_MQ_RX_NONE ETH_MQ_RX_NONE +#define RTE_ETH_LINK_FULL_DUPLEX ETH_LINK_FULL_DUPLEX +#define RTE_ETH_LINK_HALF_DUPLEX ETH_LINK_HALF_DUPLEX +#define RTE_ETH_VLAN_STRIP_OFFLOAD ETH_VLAN_STRIP_OFFLOAD +#define RTE_ETH_VLAN_FILTER_OFFLOAD ETH_VLAN_FILTER_OFFLOAD +#define RTE_ETH_VLAN_EXTEND_OFFLOAD ETH_VLAN_EXTEND_OFFLOAD +#define RTE_ETH_LINK_SPEED_200G ETH_LINK_SPEED_200G +#define RTE_ETH_LINK_SPEED_100G ETH_LINK_SPEED_100G +#define RTE_ETH_LINK_SPEED_56G ETH_LINK_SPEED_56G +#define RTE_ETH_LINK_SPEED_50G ETH_LINK_SPEED_50G +#define RTE_ETH_LINK_SPEED_40G ETH_LINK_SPEED_40G +#define RTE_ETH_LINK_SPEED_25G ETH_LINK_SPEED_25G +#define RTE_ETH_LINK_SPEED_20G ETH_LINK_SPEED_20G +#define RTE_ETH_LINK_SPEED_10G ETH_LINK_SPEED_10G +#define RTE_ETH_LINK_SPEED_5G ETH_LINK_SPEED_5G +#define RTE_ETH_LINK_SPEED_2_5G ETH_LINK_SPEED_2_5G +#define RTE_ETH_LINK_SPEED_1G ETH_LINK_SPEED_1G +#define RTE_ETH_RSS_IP ETH_RSS_IP +#define RTE_ETH_RSS_UDP ETH_RSS_UDP +#define RTE_ETH_RSS_TCP ETH_RSS_TCP #endif /* -- cgit 1.2.3-korg