All of lore.kernel.org
 help / color / mirror / Atom feed
From: rongwei liu <rongweil@nvidia.com>
To: <matan@nvidia.com>, <viacheslavo@nvidia.com>, <orika@nvidia.com>,
	<thomas@monjalon.net>, Xiaoyun Li <xiaoyun.li@intel.com>
Cc: <dev@dpdk.org>, <rasland@nvidia.com>
Subject: [dpdk-dev] [PATCH v2 2/2] app/testpmd: support VXLAN last 8-bits field matching
Date: Mon, 5 Jul 2021 12:50:20 +0300	[thread overview]
Message-ID: <20210705095020.1120216-3-rongweil@nvidia.com> (raw)
In-Reply-To: <20210705095020.1120216-1-rongweil@nvidia.com>

Add a new testpmd pattern field 'last_rsvd' that supports the
last 8-bits matching of VXLAN header.

The examples for the "last_rsvd" pattern field are as below:

1. ...pattern eth / ipv4 / udp / vxlan last_rsvd is 0x80 / end ...

This flow will exactly match the last 8-bits to be 0x80.

2. ...pattern eth / ipv4 / udp / vxlan last_rsvd spec 0x80
vxlan mask 0x80 / end ...

This flow will only match the MSB of the last 8-bits to be 1.

Signed-off-by: rongwei liu <rongweil@nvidia.com>
Acked-by: Viacheslav Ovsiienko <viacheslavo@nvidia.com>
---
 app/test-pmd/cmdline_flow.c                 | 9 +++++++++
 app/test-pmd/util.c                         | 5 +++--
 doc/guides/rel_notes/release_21_08.rst      | 7 +++++++
 doc/guides/testpmd_app_ug/testpmd_funcs.rst | 1 +
 4 files changed, 20 insertions(+), 2 deletions(-)

diff --git a/app/test-pmd/cmdline_flow.c b/app/test-pmd/cmdline_flow.c
index 1c587bb7b8..6e76a625ca 100644
--- a/app/test-pmd/cmdline_flow.c
+++ b/app/test-pmd/cmdline_flow.c
@@ -207,6 +207,7 @@ enum index {
 	ITEM_SCTP_CKSUM,
 	ITEM_VXLAN,
 	ITEM_VXLAN_VNI,
+	ITEM_VXLAN_LAST_RSVD,
 	ITEM_E_TAG,
 	ITEM_E_TAG_GRP_ECID_B,
 	ITEM_NVGRE,
@@ -1129,6 +1130,7 @@ static const enum index item_sctp[] = {
 
 static const enum index item_vxlan[] = {
 	ITEM_VXLAN_VNI,
+	ITEM_VXLAN_LAST_RSVD,
 	ITEM_NEXT,
 	ZERO,
 };
@@ -2806,6 +2808,13 @@ static const struct token token_list[] = {
 		.next = NEXT(item_vxlan, NEXT_ENTRY(UNSIGNED), item_param),
 		.args = ARGS(ARGS_ENTRY_HTON(struct rte_flow_item_vxlan, vni)),
 	},
+	[ITEM_VXLAN_LAST_RSVD] = {
+		.name = "last_rsvd",
+		.help = "VXLAN last reserved bits",
+		.next = NEXT(item_vxlan, NEXT_ENTRY(UNSIGNED), item_param),
+		.args = ARGS(ARGS_ENTRY_HTON(struct rte_flow_item_vxlan,
+					     rsvd1)),
+	},
 	[ITEM_E_TAG] = {
 		.name = "e_tag",
 		.help = "match E-Tag header",
diff --git a/app/test-pmd/util.c b/app/test-pmd/util.c
index a9e431a8b2..59626518d5 100644
--- a/app/test-pmd/util.c
+++ b/app/test-pmd/util.c
@@ -266,8 +266,9 @@ dump_pkt_burst(uint16_t port_id, uint16_t queue, struct rte_mbuf *pkts[],
 				vx_vni = rte_be_to_cpu_32(vxlan_hdr->vx_vni);
 				MKDUMPSTR(print_buf, buf_size, cur_len,
 					  " - VXLAN packet: packet type =%d, "
-					  "Destination UDP port =%d, VNI = %d",
-					  packet_type, udp_port, vx_vni >> 8);
+					  "Destination UDP port =%d, VNI = %d, "
+					  "last_rsvd = %d", packet_type,
+					  udp_port, vx_vni >> 8, vx_vni & 0xff);
 			}
 		}
 		MKDUMPSTR(print_buf, buf_size, cur_len,
diff --git a/doc/guides/rel_notes/release_21_08.rst b/doc/guides/rel_notes/release_21_08.rst
index a6ecfdf3ce..ad89af8466 100644
--- a/doc/guides/rel_notes/release_21_08.rst
+++ b/doc/guides/rel_notes/release_21_08.rst
@@ -55,6 +55,12 @@ New Features
      Also, make sure to start the actual text at the margin.
      =======================================================
 
+* **Updated Mellanox mlx5 driver.**
+
+  Updated the Mellanox mlx5 driver with new features and improvements, including:
+
+  * Added support for matching on vxlan header last 8-bits reserved field.
+
 
 Removed Items
 -------------
@@ -136,3 +142,4 @@ Tested Platforms
    This section is a comment. Do not overwrite or remove it.
    Also, make sure to start the actual text at the margin.
    =======================================================
+
diff --git a/doc/guides/testpmd_app_ug/testpmd_funcs.rst b/doc/guides/testpmd_app_ug/testpmd_funcs.rst
index 33857acf54..4ca3103067 100644
--- a/doc/guides/testpmd_app_ug/testpmd_funcs.rst
+++ b/doc/guides/testpmd_app_ug/testpmd_funcs.rst
@@ -3694,6 +3694,7 @@ This section lists supported pattern items and their attributes, if any.
 - ``vxlan``: match VXLAN header.
 
   - ``vni {unsigned}``: VXLAN identifier.
+  - ``last_rsvd {unsigned}``: VXLAN last reserved 8-bits.
 
 - ``e_tag``: match IEEE 802.1BR E-Tag header.
 
-- 
2.27.0


  parent reply	other threads:[~2021-07-05  9:43 UTC|newest]

Thread overview: 34+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-07-05  9:50 [dpdk-dev] [PATCH v2 0/2] support VXLAN header last 8-bits reserved field matching rongwei liu
2021-07-05  9:50 ` [dpdk-dev] [PATCH v2 1/2] drivers: add VXLAN header the last 8-bits matching support rongwei liu
2021-07-06 12:35   ` Thomas Monjalon
2021-07-07  8:09     ` [dpdk-dev] [PATCH v4 0/2] support VXLAN header the last 8-bits matching Rongwei Liu
2021-07-07  8:09       ` [dpdk-dev] [PATCH v4 1/2] net/mlx5: add VXLAN header the last 8-bits matching support Rongwei Liu
2021-07-07  8:09       ` [dpdk-dev] [PATCH v4 2/2] app/testpmd: support VXLAN the last 8-bits field matching Rongwei Liu
2021-07-13  8:33       ` [dpdk-dev] [PATCH v4 0/2] support VXLAN header the last 8-bits matching Andrew Rybchenko
2021-07-13  9:55         ` [dpdk-dev] [PATCH v5 " Rongwei Liu
2021-07-13  9:55           ` [dpdk-dev] [PATCH v5 1/2] net/mlx5: add VXLAN header the last 8-bits matching support Rongwei Liu
2021-07-13 10:27             ` Raslan Darawsheh
2021-07-13 10:50               ` [dpdk-dev] [PATCH v6 0/2] support VXLAN header the last 8-bits matching Rongwei Liu
2021-07-13 10:50                 ` [dpdk-dev] [PATCH v6 1/2] net/mlx5: support matching on the reserved field of VXLAN Rongwei Liu
2021-07-13 11:40                   ` Raslan Darawsheh
2021-07-13 11:49                     ` Rongwei Liu
2021-07-13 12:09                       ` [dpdk-dev] [PATCH v7 0/2] support VXLAN header the last 8-bits matching Rongwei Liu
2021-07-13 12:09                         ` [dpdk-dev] [PATCH v7 1/2] net/mlx5: support matching on the reserved field of VXLAN Rongwei Liu
2021-07-13 12:55                           ` Raslan Darawsheh
2021-07-13 13:44                             ` Rongwei Liu
2021-07-13 12:09                         ` [dpdk-dev] [PATCH v7 2/2] app/testpmd: support matching the reserved filed for VXLAN Rongwei Liu
2021-07-13 12:54                           ` Raslan Darawsheh
2021-07-13 15:34                             ` Raslan Darawsheh
2021-07-13 15:36                               ` Rongwei Liu
2021-07-13 13:09                         ` [dpdk-dev] [PATCH v7 0/2] support VXLAN header the last 8-bits matching Andrew Rybchenko
2021-07-13 12:11                     ` [dpdk-dev] [PATCH v6 1/2] net/mlx5: support matching on the reserved field of VXLAN Rongwei Liu
2021-07-13 10:50                 ` [dpdk-dev] [PATCH v6 2/2] app/testpmd: support VXLAN header last 8-bits matching Rongwei Liu
2021-07-13 11:37                   ` Raslan Darawsheh
2021-07-13 11:39                     ` Rongwei Liu
2021-07-13 10:52               ` [dpdk-dev] [PATCH v5 1/2] net/mlx5: add VXLAN header the last 8-bits matching support Rongwei Liu
2021-07-13  9:55           ` [dpdk-dev] [PATCH v5 2/2] app/testpmd: support VXLAN the last 8-bits field matching Rongwei Liu
2021-07-13 10:02             ` Raslan Darawsheh
2021-07-13 10:06               ` Andrew Rybchenko
2021-07-13  9:56         ` [dpdk-dev] [PATCH v4 0/2] support VXLAN header the last 8-bits matching Rongwei Liu
2021-07-05  9:50 ` rongwei liu [this message]
2021-07-06 12:28   ` [dpdk-dev] [PATCH v2 2/2] app/testpmd: support VXLAN last 8-bits field matching Thomas Monjalon

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20210705095020.1120216-3-rongweil@nvidia.com \
    --to=rongweil@nvidia.com \
    --cc=dev@dpdk.org \
    --cc=matan@nvidia.com \
    --cc=orika@nvidia.com \
    --cc=rasland@nvidia.com \
    --cc=thomas@monjalon.net \
    --cc=viacheslavo@nvidia.com \
    --cc=xiaoyun.li@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.