aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--build/external/packages/dpdk.mk6
-rw-r--r--src/plugins/dpdk/cryptodev/cryptodev_raw_data_path.c13
-rw-r--r--src/plugins/dpdk/device/format.c28
3 files changed, 32 insertions, 15 deletions
diff --git a/build/external/packages/dpdk.mk b/build/external/packages/dpdk.mk
index c7eb0fc3fe1..70ff5c90eb9 100644
--- a/build/external/packages/dpdk.mk
+++ b/build/external/packages/dpdk.mk
@@ -22,10 +22,10 @@ DPDK_FAILSAFE_PMD ?= n
DPDK_MACHINE ?= default
DPDK_MLX_IBV_LINK ?= static
-dpdk_version ?= 21.02
+dpdk_version ?= 21.05
dpdk_base_url ?= http://fast.dpdk.org/rel
dpdk_tarball := dpdk-$(dpdk_version).tar.xz
-dpdk_tarball_md5sum_21.02 := 2c3e4800b04495ad7fa8656a7e1a3ec1
+dpdk_tarball_md5sum_21.05 := a78bba290b11d9717d1272cc6bfaf7c3
dpdk_tarball_md5sum := $(dpdk_tarball_md5sum_$(dpdk_version))
dpdk_url := $(dpdk_base_url)/$(dpdk_tarball)
dpdk_tarball_strip_dirs := 1
@@ -64,7 +64,7 @@ DPDK_DRIVERS_DISABLED := baseband/\*, \
net/softnic, \
net/thunderx, \
raw/ifpga, \
- net/af_xdp
+ net/af_xdp
DPDK_LIBS_DISABLED := acl, \
bbdev, \
diff --git a/src/plugins/dpdk/cryptodev/cryptodev_raw_data_path.c b/src/plugins/dpdk/cryptodev/cryptodev_raw_data_path.c
index 40e020f0b37..c045d78ecb1 100644
--- a/src/plugins/dpdk/cryptodev/cryptodev_raw_data_path.c
+++ b/src/plugins/dpdk/cryptodev/cryptodev_raw_data_path.c
@@ -514,9 +514,16 @@ cryptodev_raw_dequeue (vlib_main_t *vm, u32 *nb_elts_processed,
if (!inflight || no_job_to_deq || !n_room_left)
goto end_deq;
+#if RTE_VERSION >= RTE_VERSION_NUM(21, 5, 0, 0)
+ n_deq = rte_cryptodev_raw_dequeue_burst (
+ cet->ctx, cryptodev_get_frame_n_elts, 0, cryptodev_post_dequeue,
+ (void **) &frame, 0, &n_success, &dequeue_status);
+#else
n_deq = rte_cryptodev_raw_dequeue_burst (
cet->ctx, cryptodev_get_frame_n_elts, cryptodev_post_dequeue,
(void **) &frame, 0, &n_success, &dequeue_status);
+#endif
+
if (!n_deq)
goto end_deq;
@@ -541,9 +548,15 @@ cryptodev_raw_dequeue (vlib_main_t *vm, u32 *nb_elts_processed,
/* see if we can dequeue more */
while (inflight && n_room_left && !no_job_to_deq)
{
+#if RTE_VERSION >= RTE_VERSION_NUM(21, 5, 0, 0)
+ n_deq = rte_cryptodev_raw_dequeue_burst (
+ cet->ctx, cryptodev_get_frame_n_elts, 0, cryptodev_post_dequeue,
+ (void **) &frame, 0, &n_success, &dequeue_status);
+#else
n_deq = rte_cryptodev_raw_dequeue_burst (
cet->ctx, cryptodev_get_frame_n_elts, cryptodev_post_dequeue,
(void **) &frame, 0, &n_success, &dequeue_status);
+#endif
if (!n_deq)
break;
inflight -= n_deq;
diff --git a/src/plugins/dpdk/device/format.c b/src/plugins/dpdk/device/format.c
index 1baf314acc9..c4b2ae77626 100644
--- a/src/plugins/dpdk/device/format.c
+++ b/src/plugins/dpdk/device/format.c
@@ -44,18 +44,22 @@
_ (tx_bytes_ok, q_obytes) \
_ (rx_errors, q_errors)
-#define foreach_dpdk_pkt_rx_offload_flag \
- _ (PKT_RX_VLAN, "RX packet is a 802.1q VLAN packet") \
- _ (PKT_RX_RSS_HASH, "RX packet with RSS hash result") \
- _ (PKT_RX_FDIR, "RX packet with FDIR infos") \
- _ (PKT_RX_L4_CKSUM_BAD, "L4 cksum of RX pkt. is not OK") \
- _ (PKT_RX_IP_CKSUM_BAD, "IP cksum of RX pkt. is not OK") \
- _ (PKT_RX_EIP_CKSUM_BAD, "External IP header checksum error") \
- _ (PKT_RX_VLAN_STRIPPED, "RX packet VLAN tag stripped") \
- _ (PKT_RX_IP_CKSUM_GOOD, "IP cksum of RX pkt. is valid") \
- _ (PKT_RX_L4_CKSUM_GOOD, "L4 cksum of RX pkt. is valid") \
- _ (PKT_RX_IEEE1588_PTP, "RX IEEE1588 L2 Ethernet PT Packet") \
- _ (PKT_RX_IEEE1588_TMST, "RX IEEE1588 L2/L4 timestamped packet") \
+#if RTE_VERSION < RTE_VERSION_NUM(21, 5, 0, 0)
+#define PKT_RX_OUTER_IP_CKSUM_BAD PKT_RX_EIP_CKSUM_BAD
+#endif
+
+#define foreach_dpdk_pkt_rx_offload_flag \
+ _ (PKT_RX_VLAN, "RX packet is a 802.1q VLAN packet") \
+ _ (PKT_RX_RSS_HASH, "RX packet with RSS hash result") \
+ _ (PKT_RX_FDIR, "RX packet with FDIR infos") \
+ _ (PKT_RX_L4_CKSUM_BAD, "L4 cksum of RX pkt. is not OK") \
+ _ (PKT_RX_IP_CKSUM_BAD, "IP cksum of RX pkt. is not OK") \
+ _ (PKT_RX_OUTER_IP_CKSUM_BAD, "External IP header checksum error") \
+ _ (PKT_RX_VLAN_STRIPPED, "RX packet VLAN tag stripped") \
+ _ (PKT_RX_IP_CKSUM_GOOD, "IP cksum of RX pkt. is valid") \
+ _ (PKT_RX_L4_CKSUM_GOOD, "L4 cksum of RX pkt. is valid") \
+ _ (PKT_RX_IEEE1588_PTP, "RX IEEE1588 L2 Ethernet PT Packet") \
+ _ (PKT_RX_IEEE1588_TMST, "RX IEEE1588 L2/L4 timestamped packet") \
_ (PKT_RX_QINQ_STRIPPED, "RX packet QinQ tags stripped")
#define foreach_dpdk_pkt_type \