All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 1/2] net/i40e: add support for VXLAN-GPE
@ 2019-01-02 14:38 Qiming Yang
  2019-01-02 14:38 ` [PATCH 2/2] net/i40e: support VXLAN-GPE classification Qiming Yang
  2019-03-18 13:32 ` [PATCH v2 0/4] Supported VXLAN-GPE in i40e Qiming Yang
  0 siblings, 2 replies; 27+ messages in thread
From: Qiming Yang @ 2019-01-02 14:38 UTC (permalink / raw)
  To: dev; +Cc: Qiming Yang

Can recognize new packet type VXLAN-GPE in i40e driver.
Added inner IP/TCP/UDP checksum and RSS support for VXLAN-GPE
packet.

Signed-off-by: Qiming Yang <qiming.yang@intel.com>
---
 app/test-pmd/cmdline.c           |  6 ++++--
 drivers/net/i40e/i40e_ethdev.c   | 13 +++++++++----
 lib/librte_ethdev/rte_eth_ctrl.h |  1 +
 3 files changed, 14 insertions(+), 6 deletions(-)

diff --git a/app/test-pmd/cmdline.c b/app/test-pmd/cmdline.c
index 3ddc3e0..51c7fac 100644
--- a/app/test-pmd/cmdline.c
+++ b/app/test-pmd/cmdline.c
@@ -8877,6 +8877,8 @@ cmd_cfg_tunnel_udp_port_parsed(void *parsed_result,
 		tunnel_udp.prot_type = RTE_TUNNEL_TYPE_VXLAN;
 	} else if (!strcmp(res->tunnel_type, "geneve")) {
 		tunnel_udp.prot_type = RTE_TUNNEL_TYPE_GENEVE;
+	} else if (!strcmp(res->tunnel_type, "vxlan-gpe")) {
+		tunnel_udp.prot_type = RTE_TUNNEL_TYPE_VXLAN_GPE;
 	} else {
 		printf("Invalid tunnel type\n");
 		return;
@@ -8911,7 +8913,7 @@ cmdline_parse_token_string_t cmd_config_tunnel_udp_port_action =
 				 "add#rm");
 cmdline_parse_token_string_t cmd_config_tunnel_udp_port_tunnel_type =
 	TOKEN_STRING_INITIALIZER(struct cmd_config_tunnel_udp_port, tunnel_type,
-				 "vxlan#geneve");
+				 "vxlan#geneve#vxlan-gpe");
 cmdline_parse_token_num_t cmd_config_tunnel_udp_port_value =
 	TOKEN_NUM_INITIALIZER(struct cmd_config_tunnel_udp_port, udp_port,
 			      UINT16);
@@ -8919,7 +8921,7 @@ cmdline_parse_token_num_t cmd_config_tunnel_udp_port_value =
 cmdline_parse_inst_t cmd_cfg_tunnel_udp_port = {
 	.f = cmd_cfg_tunnel_udp_port_parsed,
 	.data = NULL,
-	.help_str = "port config <port_id> udp_tunnel_port add|rm vxlan|geneve <udp_port>",
+	.help_str = "port config <port_id> udp_tunnel_port add|rm vxlan|geneve|vxlan-gpe <udp_port>",
 	.tokens = {
 		(void *)&cmd_config_tunnel_udp_port_port,
 		(void *)&cmd_config_tunnel_udp_port_config,
diff --git a/drivers/net/i40e/i40e_ethdev.c b/drivers/net/i40e/i40e_ethdev.c
index 8dc1a4a..1dd04e6 100644
--- a/drivers/net/i40e/i40e_ethdev.c
+++ b/drivers/net/i40e/i40e_ethdev.c
@@ -8338,7 +8338,7 @@ i40e_get_vxlan_port_idx(struct i40e_pf *pf, uint16_t port)
 }
 
 static int
-i40e_add_vxlan_port(struct i40e_pf *pf, uint16_t port)
+i40e_add_vxlan_port(struct i40e_pf *pf, uint16_t port, int udp_type)
 {
 	int  idx, ret;
 	uint8_t filter_idx;
@@ -8361,7 +8361,7 @@ i40e_add_vxlan_port(struct i40e_pf *pf, uint16_t port)
 		return -ENOSPC;
 	}
 
-	ret =  i40e_aq_add_udp_tunnel(hw, port, I40E_AQC_TUNNEL_TYPE_VXLAN,
+	ret =  i40e_aq_add_udp_tunnel(hw, port, udp_type,
 					&filter_idx, NULL);
 	if (ret < 0) {
 		PMD_DRV_LOG(ERR, "Failed to add VXLAN UDP port %d", port);
@@ -8429,9 +8429,13 @@ i40e_dev_udp_tunnel_port_add(struct rte_eth_dev *dev,
 
 	switch (udp_tunnel->prot_type) {
 	case RTE_TUNNEL_TYPE_VXLAN:
-		ret = i40e_add_vxlan_port(pf, udp_tunnel->udp_port);
+		ret = i40e_add_vxlan_port(pf, udp_tunnel->udp_port,
+					  I40E_AQC_TUNNEL_TYPE_VXLAN);
 		break;
-
+	case RTE_TUNNEL_TYPE_VXLAN_GPE:
+                ret = i40e_add_vxlan_port(pf, udp_tunnel->udp_port,
+					  I40E_AQC_TUNNEL_TYPE_VXLAN_GPE);
+                break;
 	case RTE_TUNNEL_TYPE_GENEVE:
 	case RTE_TUNNEL_TYPE_TEREDO:
 		PMD_DRV_LOG(ERR, "Tunnel type is not supported now.");
@@ -8460,6 +8464,7 @@ i40e_dev_udp_tunnel_port_del(struct rte_eth_dev *dev,
 
 	switch (udp_tunnel->prot_type) {
 	case RTE_TUNNEL_TYPE_VXLAN:
+	case RTE_TUNNEL_TYPE_VXLAN_GPE:
 		ret = i40e_del_vxlan_port(pf, udp_tunnel->udp_port);
 		break;
 	case RTE_TUNNEL_TYPE_GENEVE:
diff --git a/lib/librte_ethdev/rte_eth_ctrl.h b/lib/librte_ethdev/rte_eth_ctrl.h
index 5ea8ae2..b341634 100644
--- a/lib/librte_ethdev/rte_eth_ctrl.h
+++ b/lib/librte_ethdev/rte_eth_ctrl.h
@@ -229,6 +229,7 @@ enum rte_eth_tunnel_type {
 	RTE_TUNNEL_TYPE_NVGRE,
 	RTE_TUNNEL_TYPE_IP_IN_GRE,
 	RTE_L2_TUNNEL_TYPE_E_TAG,
+	RTE_TUNNEL_TYPE_VXLAN_GPE,
 	RTE_TUNNEL_TYPE_MAX,
 };
 
-- 
2.9.5

^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH 2/2] net/i40e: support VXLAN-GPE classification
  2019-01-02 14:38 [PATCH 1/2] net/i40e: add support for VXLAN-GPE Qiming Yang
@ 2019-01-02 14:38 ` Qiming Yang
  2019-03-18 13:32 ` [PATCH v2 0/4] Supported VXLAN-GPE in i40e Qiming Yang
  1 sibling, 0 replies; 27+ messages in thread
From: Qiming Yang @ 2019-01-02 14:38 UTC (permalink / raw)
  To: dev; +Cc: Qiming Yang

Added VXLAN-GPE tunnel filter, supported filter to queue.

Signed-off-by: Qiming Yang <qiming.yang@intel.com>
---
 app/test-pmd/cmdline.c         | 4 +++-
 drivers/net/i40e/i40e_ethdev.c | 3 +++
 2 files changed, 6 insertions(+), 1 deletion(-)

diff --git a/app/test-pmd/cmdline.c b/app/test-pmd/cmdline.c
index 51c7fac..7b7cb12 100644
--- a/app/test-pmd/cmdline.c
+++ b/app/test-pmd/cmdline.c
@@ -8704,6 +8704,8 @@ cmd_tunnel_filter_parsed(void *parsed_result,
 
 	if (!strcmp(res->tunnel_type, "vxlan"))
 		tunnel_filter_conf.tunnel_type = RTE_TUNNEL_TYPE_VXLAN;
+	else if (!strcmp(res->tunnel_type, "vxlan-gpe"))
+		tunnel_filter_conf.tunnel_type = RTE_TUNNEL_TYPE_VXLAN_GPE;
 	else if (!strcmp(res->tunnel_type, "nvgre"))
 		tunnel_filter_conf.tunnel_type = RTE_TUNNEL_TYPE_NVGRE;
 	else if (!strcmp(res->tunnel_type, "ipingre"))
@@ -8753,7 +8755,7 @@ cmdline_parse_token_ipaddr_t cmd_tunnel_filter_ip_value =
 	ip_value);
 cmdline_parse_token_string_t cmd_tunnel_filter_tunnel_type =
 	TOKEN_STRING_INITIALIZER(struct cmd_tunnel_filter_result,
-	tunnel_type, "vxlan#nvgre#ipingre");
+	tunnel_type, "vxlan#nvgre#ipingre#vxlan-gpe");
 
 cmdline_parse_token_string_t cmd_tunnel_filter_filter_type =
 	TOKEN_STRING_INITIALIZER(struct cmd_tunnel_filter_result,
diff --git a/drivers/net/i40e/i40e_ethdev.c b/drivers/net/i40e/i40e_ethdev.c
index 1dd04e6..8eb2a02 100644
--- a/drivers/net/i40e/i40e_ethdev.c
+++ b/drivers/net/i40e/i40e_ethdev.c
@@ -7690,6 +7690,9 @@ i40e_dev_tunnel_filter_set(struct i40e_pf *pf,
 	case RTE_TUNNEL_TYPE_IP_IN_GRE:
 		tun_type = I40E_AQC_ADD_CLOUD_TNL_TYPE_IP;
 		break;
+	case RTE_TUNNEL_TYPE_VXLAN_GPE:
+		tun_type = I40E_AQC_ADD_CLOUD_TNL_TYPE_VXLAN_GPE;
+		break;
 	default:
 		/* Other tunnel types is not supported. */
 		PMD_DRV_LOG(ERR, "tunnel type is not supported.");
-- 
2.9.5

^ permalink raw reply related	[flat|nested] 27+ messages in thread

* Re: [PATCH v3 2/5] net/i40e: add support for VXLAN-GPE
  2019-03-18 15:41     ` [PATCH v3 2/5] net/i40e: add support for VXLAN-GPE Qiming Yang
@ 2019-03-18 12:25       ` Zhang, Qi Z
  0 siblings, 0 replies; 27+ messages in thread
From: Zhang, Qi Z @ 2019-03-18 12:25 UTC (permalink / raw)
  To: Yang, Qiming, dev



> -----Original Message-----
> From: Yang, Qiming
> Sent: Monday, March 18, 2019 11:42 PM
> To: dev@dpdk.org
> Cc: Zhang, Qi Z <qi.z.zhang@intel.com>; Yang, Qiming <qiming.yang@intel.com>
> Subject: [PATCH v3 2/5] net/i40e: add support for VXLAN-GPE
> 
> Can recognize new packet type VXLAN-GPE in i40e driver.
> Added inner IP/TCP/UDP checksum and RSS support for VXLAN-GPE packet.

The commit log is a missing leading.
.
there is no inner IP/TCP/UDP checksum and RSS related change

May reword to

Add new protocol type VXLAN-GPE support for UDP tunnel.
inner IP/TCP/UDP checksum and RSS configuration shared the same implementation of VXLAN.

> 
> Signed-off-by: Qiming Yang <qiming.yang@intel.com>
> ---
>  drivers/net/i40e/i40e_ethdev.c | 13 +++++++++----
>  1 file changed, 9 insertions(+), 4 deletions(-)
> 
> diff --git a/drivers/net/i40e/i40e_ethdev.c b/drivers/net/i40e/i40e_ethdev.c
> index dca61f0..b2ec5cc 100644
> --- a/drivers/net/i40e/i40e_ethdev.c
> +++ b/drivers/net/i40e/i40e_ethdev.c
> @@ -8368,7 +8368,7 @@ i40e_get_vxlan_port_idx(struct i40e_pf *pf, uint16_t
> port)  }
> 
>  static int
> -i40e_add_vxlan_port(struct i40e_pf *pf, uint16_t port)
> +i40e_add_vxlan_port(struct i40e_pf *pf, uint16_t port, int udp_type)
>  {
>  	int  idx, ret;
>  	uint8_t filter_idx;
> @@ -8391,7 +8391,7 @@ i40e_add_vxlan_port(struct i40e_pf *pf, uint16_t port)
>  		return -ENOSPC;
>  	}
> 
> -	ret =  i40e_aq_add_udp_tunnel(hw, port,
> I40E_AQC_TUNNEL_TYPE_VXLAN,
> +	ret =  i40e_aq_add_udp_tunnel(hw, port, udp_type,
>  					&filter_idx, NULL);
>  	if (ret < 0) {
>  		PMD_DRV_LOG(ERR, "Failed to add VXLAN UDP port %d", port); @@
> -8459,9 +8459,13 @@ i40e_dev_udp_tunnel_port_add(struct rte_eth_dev *dev,
> 
>  	switch (udp_tunnel->prot_type) {
>  	case RTE_TUNNEL_TYPE_VXLAN:
> -		ret = i40e_add_vxlan_port(pf, udp_tunnel->udp_port);
> +		ret = i40e_add_vxlan_port(pf, udp_tunnel->udp_port,
> +					  I40E_AQC_TUNNEL_TYPE_VXLAN);
> +		break;
> +	case RTE_TUNNEL_TYPE_VXLAN_GPE:
> +		ret = i40e_add_vxlan_port(pf, udp_tunnel->udp_port,
> +					  I40E_AQC_TUNNEL_TYPE_VXLAN_GPE);
>  		break;
> -
>  	case RTE_TUNNEL_TYPE_GENEVE:
>  	case RTE_TUNNEL_TYPE_TEREDO:
>  		PMD_DRV_LOG(ERR, "Tunnel type is not supported now."); @@
> -8490,6 +8494,7 @@ i40e_dev_udp_tunnel_port_del(struct rte_eth_dev *dev,
> 
>  	switch (udp_tunnel->prot_type) {
>  	case RTE_TUNNEL_TYPE_VXLAN:
> +	case RTE_TUNNEL_TYPE_VXLAN_GPE:
>  		ret = i40e_del_vxlan_port(pf, udp_tunnel->udp_port);
>  		break;
>  	case RTE_TUNNEL_TYPE_GENEVE:
> --
> 2.9.5

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [PATCH v3 0/5] Supported VXLAN-GPE in i40e
  2019-03-18 15:41   ` [PATCH v3 0/5] Supported VXLAN-GPE in i40e Qiming Yang
@ 2019-03-18 12:33     ` Zhang, Qi Z
  2019-03-18 15:41     ` [PATCH v3 1/5] eal: add VXLAN-GPE macro Qiming Yang
                       ` (5 subsequent siblings)
  6 siblings, 0 replies; 27+ messages in thread
From: Zhang, Qi Z @ 2019-03-18 12:33 UTC (permalink / raw)
  To: Yang, Qiming, dev



> -----Original Message-----
> From: Yang, Qiming
> Sent: Monday, March 18, 2019 11:42 PM
> To: dev@dpdk.org
> Cc: Zhang, Qi Z <qi.z.zhang@intel.com>; Yang, Qiming <qiming.yang@intel.com>
> Subject: [PATCH v3 0/5] Supported VXLAN-GPE in i40e
> 
> This patch set supported new packet type VXLAN-GPE and add support for inner
> checksum, RSS and classification for VXLAN-GPE.
> 
> ---
> V3:
> 1. fixed issue in release note.
> 2. fixed check patch issue.
> 3. spilted eal related change to a new patch.
> 
> V2:
> 1. move testpmd related changes to a new patch.
> 2. added release note update.
> 
> Qiming Yang (5):
>   eal: add VXLAN-GPE macro
>   net/i40e: add support for VXLAN-GPE
>   net/i40e: support VXLAN-GPE classification
>   app/testpmd: add VXLAN-GPE to tunnel type
>   doc: add release note for VXLAN-GPE support
> 
>  app/test-pmd/cmdline.c                 | 10 +++++++---
>  doc/guides/rel_notes/release_19_05.rst |  6 ++++++
>  drivers/net/i40e/i40e_ethdev.c         | 16 ++++++++++++----
>  lib/librte_ethdev/rte_eth_ctrl.h       |  1 +
>  4 files changed, 26 insertions(+), 7 deletions(-)
> 
> --
> 2.9.5

some reword needed on patch 2/5 commit log and please do a rebase.

otherwise
Acked-by: Qi Zhang <qi.z.zhang@intel.com>
 

^ permalink raw reply	[flat|nested] 27+ messages in thread

* [PATCH v2 0/4] Supported VXLAN-GPE in i40e
  2019-01-02 14:38 [PATCH 1/2] net/i40e: add support for VXLAN-GPE Qiming Yang
  2019-01-02 14:38 ` [PATCH 2/2] net/i40e: support VXLAN-GPE classification Qiming Yang
@ 2019-03-18 13:32 ` Qiming Yang
  2019-03-18 13:32   ` [PATCH v2 1/4] net/i40e: add support for VXLAN-GPE Qiming Yang
                     ` (4 more replies)
  1 sibling, 5 replies; 27+ messages in thread
From: Qiming Yang @ 2019-03-18 13:32 UTC (permalink / raw)
  To: dev; +Cc: qi.z.zhang, Qiming Yang

This patch set supported new packet type VXLAN-GPE and add
support for inner checksum, RSS and classification for VXLAN-GPE.

---
V2:
1. move testpmd related changes to a new patch
2. added release note update.

Qiming Yang (4):
  net/i40e: add support for VXLAN-GPE
  net/i40e: support VXLAN-GPE classification
  app/testpmd: Add VXLAN-GPE to tunnel type
  doc: add release note for VXLAN-GPE support

 app/test-pmd/cmdline.c                 | 10 +++++++---
 doc/guides/rel_notes/release_19_05.rst |  6 ++++++
 drivers/net/i40e/i40e_ethdev.c         | 16 ++++++++++++----
 lib/librte_ethdev/rte_eth_ctrl.h       |  1 +
 4 files changed, 26 insertions(+), 7 deletions(-)

-- 
2.9.5

^ permalink raw reply	[flat|nested] 27+ messages in thread

* [PATCH v2 1/4] net/i40e: add support for VXLAN-GPE
  2019-03-18 13:32 ` [PATCH v2 0/4] Supported VXLAN-GPE in i40e Qiming Yang
@ 2019-03-18 13:32   ` Qiming Yang
  2019-03-18 13:32   ` [PATCH v2 2/4] net/i40e: support VXLAN-GPE classification Qiming Yang
                     ` (3 subsequent siblings)
  4 siblings, 0 replies; 27+ messages in thread
From: Qiming Yang @ 2019-03-18 13:32 UTC (permalink / raw)
  To: dev; +Cc: qi.z.zhang, Qiming Yang

Can recognize new packet type VXLAN-GPE in i40e driver.
Added inner IP/TCP/UDP checksum and RSS support for VXLAN-GPE
packet.

Signed-off-by: Qiming Yang <qiming.yang@intel.com>
---
 drivers/net/i40e/i40e_ethdev.c   | 13 +++++++++----
 lib/librte_ethdev/rte_eth_ctrl.h |  1 +
 2 files changed, 10 insertions(+), 4 deletions(-)

diff --git a/drivers/net/i40e/i40e_ethdev.c b/drivers/net/i40e/i40e_ethdev.c
index dca61f0..8093eae 100644
--- a/drivers/net/i40e/i40e_ethdev.c
+++ b/drivers/net/i40e/i40e_ethdev.c
@@ -8368,7 +8368,7 @@ i40e_get_vxlan_port_idx(struct i40e_pf *pf, uint16_t port)
 }
 
 static int
-i40e_add_vxlan_port(struct i40e_pf *pf, uint16_t port)
+i40e_add_vxlan_port(struct i40e_pf *pf, uint16_t port, int udp_type)
 {
 	int  idx, ret;
 	uint8_t filter_idx;
@@ -8391,7 +8391,7 @@ i40e_add_vxlan_port(struct i40e_pf *pf, uint16_t port)
 		return -ENOSPC;
 	}
 
-	ret =  i40e_aq_add_udp_tunnel(hw, port, I40E_AQC_TUNNEL_TYPE_VXLAN,
+	ret =  i40e_aq_add_udp_tunnel(hw, port, udp_type,
 					&filter_idx, NULL);
 	if (ret < 0) {
 		PMD_DRV_LOG(ERR, "Failed to add VXLAN UDP port %d", port);
@@ -8459,9 +8459,13 @@ i40e_dev_udp_tunnel_port_add(struct rte_eth_dev *dev,
 
 	switch (udp_tunnel->prot_type) {
 	case RTE_TUNNEL_TYPE_VXLAN:
-		ret = i40e_add_vxlan_port(pf, udp_tunnel->udp_port);
+		ret = i40e_add_vxlan_port(pf, udp_tunnel->udp_port,
+					  I40E_AQC_TUNNEL_TYPE_VXLAN);
 		break;
-
+	case RTE_TUNNEL_TYPE_VXLAN_GPE:
+                ret = i40e_add_vxlan_port(pf, udp_tunnel->udp_port,
+					  I40E_AQC_TUNNEL_TYPE_VXLAN_GPE);
+                break;
 	case RTE_TUNNEL_TYPE_GENEVE:
 	case RTE_TUNNEL_TYPE_TEREDO:
 		PMD_DRV_LOG(ERR, "Tunnel type is not supported now.");
@@ -8490,6 +8494,7 @@ i40e_dev_udp_tunnel_port_del(struct rte_eth_dev *dev,
 
 	switch (udp_tunnel->prot_type) {
 	case RTE_TUNNEL_TYPE_VXLAN:
+	case RTE_TUNNEL_TYPE_VXLAN_GPE:
 		ret = i40e_del_vxlan_port(pf, udp_tunnel->udp_port);
 		break;
 	case RTE_TUNNEL_TYPE_GENEVE:
diff --git a/lib/librte_ethdev/rte_eth_ctrl.h b/lib/librte_ethdev/rte_eth_ctrl.h
index 5ea8ae2..b341634 100644
--- a/lib/librte_ethdev/rte_eth_ctrl.h
+++ b/lib/librte_ethdev/rte_eth_ctrl.h
@@ -229,6 +229,7 @@ enum rte_eth_tunnel_type {
 	RTE_TUNNEL_TYPE_NVGRE,
 	RTE_TUNNEL_TYPE_IP_IN_GRE,
 	RTE_L2_TUNNEL_TYPE_E_TAG,
+	RTE_TUNNEL_TYPE_VXLAN_GPE,
 	RTE_TUNNEL_TYPE_MAX,
 };
 
-- 
2.9.5

^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH v2 2/4] net/i40e: support VXLAN-GPE classification
  2019-03-18 13:32 ` [PATCH v2 0/4] Supported VXLAN-GPE in i40e Qiming Yang
  2019-03-18 13:32   ` [PATCH v2 1/4] net/i40e: add support for VXLAN-GPE Qiming Yang
@ 2019-03-18 13:32   ` Qiming Yang
  2019-03-18 13:32   ` [PATCH v2 3/4] app/testpmd: add VXLAN-GPE to tunnel type Qiming Yang
                     ` (2 subsequent siblings)
  4 siblings, 0 replies; 27+ messages in thread
From: Qiming Yang @ 2019-03-18 13:32 UTC (permalink / raw)
  To: dev; +Cc: qi.z.zhang, Qiming Yang

Added VXLAN-GPE tunnel filter, supported filter to queue.

Signed-off-by: Qiming Yang <qiming.yang@intel.com>
---
 drivers/net/i40e/i40e_ethdev.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/drivers/net/i40e/i40e_ethdev.c b/drivers/net/i40e/i40e_ethdev.c
index 8093eae..8d28ada 100644
--- a/drivers/net/i40e/i40e_ethdev.c
+++ b/drivers/net/i40e/i40e_ethdev.c
@@ -7720,6 +7720,9 @@ i40e_dev_tunnel_filter_set(struct i40e_pf *pf,
 	case RTE_TUNNEL_TYPE_IP_IN_GRE:
 		tun_type = I40E_AQC_ADD_CLOUD_TNL_TYPE_IP;
 		break;
+	case RTE_TUNNEL_TYPE_VXLAN_GPE:
+		tun_type = I40E_AQC_ADD_CLOUD_TNL_TYPE_VXLAN_GPE;
+		break;
 	default:
 		/* Other tunnel types is not supported. */
 		PMD_DRV_LOG(ERR, "tunnel type is not supported.");
-- 
2.9.5

^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH v2 3/4] app/testpmd: add VXLAN-GPE to tunnel type
  2019-03-18 13:32 ` [PATCH v2 0/4] Supported VXLAN-GPE in i40e Qiming Yang
  2019-03-18 13:32   ` [PATCH v2 1/4] net/i40e: add support for VXLAN-GPE Qiming Yang
  2019-03-18 13:32   ` [PATCH v2 2/4] net/i40e: support VXLAN-GPE classification Qiming Yang
@ 2019-03-18 13:32   ` Qiming Yang
  2019-03-18 13:32   ` [PATCH v2 4/4] doc: add release note for VXLAN-GPE support Qiming Yang
  2019-03-18 15:41   ` [PATCH v3 0/5] Supported VXLAN-GPE in i40e Qiming Yang
  4 siblings, 0 replies; 27+ messages in thread
From: Qiming Yang @ 2019-03-18 13:32 UTC (permalink / raw)
  To: dev; +Cc: qi.z.zhang, Qiming Yang

This patch added new item "vxlan-gpe" to tunnel_type to
support new VXLAN-GPE packet type, and its clasification.

Signed-off-by: Qiming Yang <qiming.yang@intel.com>
---
 app/test-pmd/cmdline.c | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/app/test-pmd/cmdline.c b/app/test-pmd/cmdline.c
index db53cc0..08a554c 100644
--- a/app/test-pmd/cmdline.c
+++ b/app/test-pmd/cmdline.c
@@ -8710,6 +8710,8 @@ cmd_tunnel_filter_parsed(void *parsed_result,
 
 	if (!strcmp(res->tunnel_type, "vxlan"))
 		tunnel_filter_conf.tunnel_type = RTE_TUNNEL_TYPE_VXLAN;
+	else if (!strcmp(res->tunnel_type, "vxlan-gpe"))
+		tunnel_filter_conf.tunnel_type = RTE_TUNNEL_TYPE_VXLAN_GPE;
 	else if (!strcmp(res->tunnel_type, "nvgre"))
 		tunnel_filter_conf.tunnel_type = RTE_TUNNEL_TYPE_NVGRE;
 	else if (!strcmp(res->tunnel_type, "ipingre"))
@@ -8759,7 +8761,7 @@ cmdline_parse_token_ipaddr_t cmd_tunnel_filter_ip_value =
 	ip_value);
 cmdline_parse_token_string_t cmd_tunnel_filter_tunnel_type =
 	TOKEN_STRING_INITIALIZER(struct cmd_tunnel_filter_result,
-	tunnel_type, "vxlan#nvgre#ipingre");
+	tunnel_type, "vxlan#nvgre#ipingre#vxlan-gpe");
 
 cmdline_parse_token_string_t cmd_tunnel_filter_filter_type =
 	TOKEN_STRING_INITIALIZER(struct cmd_tunnel_filter_result,
@@ -8883,6 +8885,8 @@ cmd_cfg_tunnel_udp_port_parsed(void *parsed_result,
 		tunnel_udp.prot_type = RTE_TUNNEL_TYPE_VXLAN;
 	} else if (!strcmp(res->tunnel_type, "geneve")) {
 		tunnel_udp.prot_type = RTE_TUNNEL_TYPE_GENEVE;
+	} else if (!strcmp(res->tunnel_type, "vxlan-gpe")) {
+		tunnel_udp.prot_type = RTE_TUNNEL_TYPE_VXLAN_GPE;
 	} else {
 		printf("Invalid tunnel type\n");
 		return;
@@ -8917,7 +8921,7 @@ cmdline_parse_token_string_t cmd_config_tunnel_udp_port_action =
 				 "add#rm");
 cmdline_parse_token_string_t cmd_config_tunnel_udp_port_tunnel_type =
 	TOKEN_STRING_INITIALIZER(struct cmd_config_tunnel_udp_port, tunnel_type,
-				 "vxlan#geneve");
+				 "vxlan#geneve#vxlan-gpe");
 cmdline_parse_token_num_t cmd_config_tunnel_udp_port_value =
 	TOKEN_NUM_INITIALIZER(struct cmd_config_tunnel_udp_port, udp_port,
 			      UINT16);
@@ -8925,7 +8929,7 @@ cmdline_parse_token_num_t cmd_config_tunnel_udp_port_value =
 cmdline_parse_inst_t cmd_cfg_tunnel_udp_port = {
 	.f = cmd_cfg_tunnel_udp_port_parsed,
 	.data = NULL,
-	.help_str = "port config <port_id> udp_tunnel_port add|rm vxlan|geneve <udp_port>",
+	.help_str = "port config <port_id> udp_tunnel_port add|rm vxlan|geneve|vxlan-gpe <udp_port>",
 	.tokens = {
 		(void *)&cmd_config_tunnel_udp_port_port,
 		(void *)&cmd_config_tunnel_udp_port_config,
-- 
2.9.5

^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH v2 4/4] doc: add release note for VXLAN-GPE support
  2019-03-18 13:32 ` [PATCH v2 0/4] Supported VXLAN-GPE in i40e Qiming Yang
                     ` (2 preceding siblings ...)
  2019-03-18 13:32   ` [PATCH v2 3/4] app/testpmd: add VXLAN-GPE to tunnel type Qiming Yang
@ 2019-03-18 13:32   ` Qiming Yang
  2019-03-18 15:41   ` [PATCH v3 0/5] Supported VXLAN-GPE in i40e Qiming Yang
  4 siblings, 0 replies; 27+ messages in thread
From: Qiming Yang @ 2019-03-18 13:32 UTC (permalink / raw)
  To: dev; +Cc: qi.z.zhang, Qiming Yang

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain; charset=y, Size: 641 bytes --]

Signed-off-by: Qiming Yang <qiming.yang@intel.com>
---
 doc/guides/rel_notes/release_19_05.rst | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/doc/guides/rel_notes/release_19_05.rst b/doc/guides/rel_notes/release_19_05.rst
index 61a2c73..2aef044 100644
--- a/doc/guides/rel_notes/release_19_05.rst
+++ b/doc/guides/rel_notes/release_19_05.rst
@@ -91,6 +91,12 @@ New Features
 
   * Added promiscuous mode support.
 
+* **Updated the i40e driver.**
+
+  New features for PF:
+
+  * Support for VXLAN-GPE packet on Intel® 40GbE Controllers.
+  * Added support for VXLAN-GPE classification.
 
 Removed Items
 -------------
-- 
2.9.5

^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH v3 0/5] Supported VXLAN-GPE in i40e
  2019-03-18 13:32 ` [PATCH v2 0/4] Supported VXLAN-GPE in i40e Qiming Yang
                     ` (3 preceding siblings ...)
  2019-03-18 13:32   ` [PATCH v2 4/4] doc: add release note for VXLAN-GPE support Qiming Yang
@ 2019-03-18 15:41   ` Qiming Yang
  2019-03-18 12:33     ` Zhang, Qi Z
                       ` (6 more replies)
  4 siblings, 7 replies; 27+ messages in thread
From: Qiming Yang @ 2019-03-18 15:41 UTC (permalink / raw)
  To: dev; +Cc: qi.z.zhang, Qiming Yang

This patch set supported new packet type VXLAN-GPE and add
support for inner checksum, RSS and classification for VXLAN-GPE.

---
V3:
1. fixed issue in release note.
2. fixed check patch issue.
3. spilted eal related change to a new patch.

V2:
1. move testpmd related changes to a new patch.
2. added release note update.

Qiming Yang (5):
  eal: add VXLAN-GPE macro
  net/i40e: add support for VXLAN-GPE
  net/i40e: support VXLAN-GPE classification
  app/testpmd: add VXLAN-GPE to tunnel type
  doc: add release note for VXLAN-GPE support

 app/test-pmd/cmdline.c                 | 10 +++++++---
 doc/guides/rel_notes/release_19_05.rst |  6 ++++++
 drivers/net/i40e/i40e_ethdev.c         | 16 ++++++++++++----
 lib/librte_ethdev/rte_eth_ctrl.h       |  1 +
 4 files changed, 26 insertions(+), 7 deletions(-)

-- 
2.9.5

^ permalink raw reply	[flat|nested] 27+ messages in thread

* [PATCH v3 1/5] eal: add VXLAN-GPE macro
  2019-03-18 15:41   ` [PATCH v3 0/5] Supported VXLAN-GPE in i40e Qiming Yang
  2019-03-18 12:33     ` Zhang, Qi Z
@ 2019-03-18 15:41     ` Qiming Yang
  2019-03-18 15:41     ` [PATCH v3 2/5] net/i40e: add support for VXLAN-GPE Qiming Yang
                       ` (4 subsequent siblings)
  6 siblings, 0 replies; 27+ messages in thread
From: Qiming Yang @ 2019-03-18 15:41 UTC (permalink / raw)
  To: dev; +Cc: qi.z.zhang, Qiming Yang

This patch added VXLAN-GPE macro in rte_eth_tunnel_type.

Signed-off-by: Qiming Yang <qiming.yang@intel.com>
---
 lib/librte_ethdev/rte_eth_ctrl.h | 1 +
 1 file changed, 1 insertion(+)

diff --git a/lib/librte_ethdev/rte_eth_ctrl.h b/lib/librte_ethdev/rte_eth_ctrl.h
index 5ea8ae2..b341634 100644
--- a/lib/librte_ethdev/rte_eth_ctrl.h
+++ b/lib/librte_ethdev/rte_eth_ctrl.h
@@ -229,6 +229,7 @@ enum rte_eth_tunnel_type {
 	RTE_TUNNEL_TYPE_NVGRE,
 	RTE_TUNNEL_TYPE_IP_IN_GRE,
 	RTE_L2_TUNNEL_TYPE_E_TAG,
+	RTE_TUNNEL_TYPE_VXLAN_GPE,
 	RTE_TUNNEL_TYPE_MAX,
 };
 
-- 
2.9.5

^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH v3 2/5] net/i40e: add support for VXLAN-GPE
  2019-03-18 15:41   ` [PATCH v3 0/5] Supported VXLAN-GPE in i40e Qiming Yang
  2019-03-18 12:33     ` Zhang, Qi Z
  2019-03-18 15:41     ` [PATCH v3 1/5] eal: add VXLAN-GPE macro Qiming Yang
@ 2019-03-18 15:41     ` Qiming Yang
  2019-03-18 12:25       ` Zhang, Qi Z
  2019-03-18 15:41     ` [PATCH v3 3/5] net/i40e: support VXLAN-GPE classification Qiming Yang
                       ` (3 subsequent siblings)
  6 siblings, 1 reply; 27+ messages in thread
From: Qiming Yang @ 2019-03-18 15:41 UTC (permalink / raw)
  To: dev; +Cc: qi.z.zhang, Qiming Yang

Can recognize new packet type VXLAN-GPE in i40e driver.
Added inner IP/TCP/UDP checksum and RSS support for VXLAN-GPE
packet.

Signed-off-by: Qiming Yang <qiming.yang@intel.com>
---
 drivers/net/i40e/i40e_ethdev.c | 13 +++++++++----
 1 file changed, 9 insertions(+), 4 deletions(-)

diff --git a/drivers/net/i40e/i40e_ethdev.c b/drivers/net/i40e/i40e_ethdev.c
index dca61f0..b2ec5cc 100644
--- a/drivers/net/i40e/i40e_ethdev.c
+++ b/drivers/net/i40e/i40e_ethdev.c
@@ -8368,7 +8368,7 @@ i40e_get_vxlan_port_idx(struct i40e_pf *pf, uint16_t port)
 }
 
 static int
-i40e_add_vxlan_port(struct i40e_pf *pf, uint16_t port)
+i40e_add_vxlan_port(struct i40e_pf *pf, uint16_t port, int udp_type)
 {
 	int  idx, ret;
 	uint8_t filter_idx;
@@ -8391,7 +8391,7 @@ i40e_add_vxlan_port(struct i40e_pf *pf, uint16_t port)
 		return -ENOSPC;
 	}
 
-	ret =  i40e_aq_add_udp_tunnel(hw, port, I40E_AQC_TUNNEL_TYPE_VXLAN,
+	ret =  i40e_aq_add_udp_tunnel(hw, port, udp_type,
 					&filter_idx, NULL);
 	if (ret < 0) {
 		PMD_DRV_LOG(ERR, "Failed to add VXLAN UDP port %d", port);
@@ -8459,9 +8459,13 @@ i40e_dev_udp_tunnel_port_add(struct rte_eth_dev *dev,
 
 	switch (udp_tunnel->prot_type) {
 	case RTE_TUNNEL_TYPE_VXLAN:
-		ret = i40e_add_vxlan_port(pf, udp_tunnel->udp_port);
+		ret = i40e_add_vxlan_port(pf, udp_tunnel->udp_port,
+					  I40E_AQC_TUNNEL_TYPE_VXLAN);
+		break;
+	case RTE_TUNNEL_TYPE_VXLAN_GPE:
+		ret = i40e_add_vxlan_port(pf, udp_tunnel->udp_port,
+					  I40E_AQC_TUNNEL_TYPE_VXLAN_GPE);
 		break;
-
 	case RTE_TUNNEL_TYPE_GENEVE:
 	case RTE_TUNNEL_TYPE_TEREDO:
 		PMD_DRV_LOG(ERR, "Tunnel type is not supported now.");
@@ -8490,6 +8494,7 @@ i40e_dev_udp_tunnel_port_del(struct rte_eth_dev *dev,
 
 	switch (udp_tunnel->prot_type) {
 	case RTE_TUNNEL_TYPE_VXLAN:
+	case RTE_TUNNEL_TYPE_VXLAN_GPE:
 		ret = i40e_del_vxlan_port(pf, udp_tunnel->udp_port);
 		break;
 	case RTE_TUNNEL_TYPE_GENEVE:
-- 
2.9.5

^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH v3 3/5] net/i40e: support VXLAN-GPE classification
  2019-03-18 15:41   ` [PATCH v3 0/5] Supported VXLAN-GPE in i40e Qiming Yang
                       ` (2 preceding siblings ...)
  2019-03-18 15:41     ` [PATCH v3 2/5] net/i40e: add support for VXLAN-GPE Qiming Yang
@ 2019-03-18 15:41     ` Qiming Yang
  2019-03-18 15:41     ` [PATCH v3 4/5] app/testpmd: add VXLAN-GPE to tunnel type Qiming Yang
                       ` (2 subsequent siblings)
  6 siblings, 0 replies; 27+ messages in thread
From: Qiming Yang @ 2019-03-18 15:41 UTC (permalink / raw)
  To: dev; +Cc: qi.z.zhang, Qiming Yang

Added VXLAN-GPE tunnel filter, supported filter to queue.

Signed-off-by: Qiming Yang <qiming.yang@intel.com>
---
 drivers/net/i40e/i40e_ethdev.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/drivers/net/i40e/i40e_ethdev.c b/drivers/net/i40e/i40e_ethdev.c
index b2ec5cc..18faf65 100644
--- a/drivers/net/i40e/i40e_ethdev.c
+++ b/drivers/net/i40e/i40e_ethdev.c
@@ -7720,6 +7720,9 @@ i40e_dev_tunnel_filter_set(struct i40e_pf *pf,
 	case RTE_TUNNEL_TYPE_IP_IN_GRE:
 		tun_type = I40E_AQC_ADD_CLOUD_TNL_TYPE_IP;
 		break;
+	case RTE_TUNNEL_TYPE_VXLAN_GPE:
+		tun_type = I40E_AQC_ADD_CLOUD_TNL_TYPE_VXLAN_GPE;
+		break;
 	default:
 		/* Other tunnel types is not supported. */
 		PMD_DRV_LOG(ERR, "tunnel type is not supported.");
-- 
2.9.5

^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH v3 4/5] app/testpmd: add VXLAN-GPE to tunnel type
  2019-03-18 15:41   ` [PATCH v3 0/5] Supported VXLAN-GPE in i40e Qiming Yang
                       ` (3 preceding siblings ...)
  2019-03-18 15:41     ` [PATCH v3 3/5] net/i40e: support VXLAN-GPE classification Qiming Yang
@ 2019-03-18 15:41     ` Qiming Yang
  2019-03-18 15:42     ` [PATCH v3 5/5] doc: add release note for VXLAN-GPE support Qiming Yang
  2019-03-19 16:36     ` [PATCH v4 0/5] Supported VXLAN-GPE in i40e Qiming Yang
  6 siblings, 0 replies; 27+ messages in thread
From: Qiming Yang @ 2019-03-18 15:41 UTC (permalink / raw)
  To: dev; +Cc: qi.z.zhang, Qiming Yang

This patch added new item "vxlan-gpe" to tunnel_type to
support new VXLAN-GPE packet type, and its clasification.

Signed-off-by: Qiming Yang <qiming.yang@intel.com>
---
 app/test-pmd/cmdline.c | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/app/test-pmd/cmdline.c b/app/test-pmd/cmdline.c
index db53cc0..08a554c 100644
--- a/app/test-pmd/cmdline.c
+++ b/app/test-pmd/cmdline.c
@@ -8710,6 +8710,8 @@ cmd_tunnel_filter_parsed(void *parsed_result,
 
 	if (!strcmp(res->tunnel_type, "vxlan"))
 		tunnel_filter_conf.tunnel_type = RTE_TUNNEL_TYPE_VXLAN;
+	else if (!strcmp(res->tunnel_type, "vxlan-gpe"))
+		tunnel_filter_conf.tunnel_type = RTE_TUNNEL_TYPE_VXLAN_GPE;
 	else if (!strcmp(res->tunnel_type, "nvgre"))
 		tunnel_filter_conf.tunnel_type = RTE_TUNNEL_TYPE_NVGRE;
 	else if (!strcmp(res->tunnel_type, "ipingre"))
@@ -8759,7 +8761,7 @@ cmdline_parse_token_ipaddr_t cmd_tunnel_filter_ip_value =
 	ip_value);
 cmdline_parse_token_string_t cmd_tunnel_filter_tunnel_type =
 	TOKEN_STRING_INITIALIZER(struct cmd_tunnel_filter_result,
-	tunnel_type, "vxlan#nvgre#ipingre");
+	tunnel_type, "vxlan#nvgre#ipingre#vxlan-gpe");
 
 cmdline_parse_token_string_t cmd_tunnel_filter_filter_type =
 	TOKEN_STRING_INITIALIZER(struct cmd_tunnel_filter_result,
@@ -8883,6 +8885,8 @@ cmd_cfg_tunnel_udp_port_parsed(void *parsed_result,
 		tunnel_udp.prot_type = RTE_TUNNEL_TYPE_VXLAN;
 	} else if (!strcmp(res->tunnel_type, "geneve")) {
 		tunnel_udp.prot_type = RTE_TUNNEL_TYPE_GENEVE;
+	} else if (!strcmp(res->tunnel_type, "vxlan-gpe")) {
+		tunnel_udp.prot_type = RTE_TUNNEL_TYPE_VXLAN_GPE;
 	} else {
 		printf("Invalid tunnel type\n");
 		return;
@@ -8917,7 +8921,7 @@ cmdline_parse_token_string_t cmd_config_tunnel_udp_port_action =
 				 "add#rm");
 cmdline_parse_token_string_t cmd_config_tunnel_udp_port_tunnel_type =
 	TOKEN_STRING_INITIALIZER(struct cmd_config_tunnel_udp_port, tunnel_type,
-				 "vxlan#geneve");
+				 "vxlan#geneve#vxlan-gpe");
 cmdline_parse_token_num_t cmd_config_tunnel_udp_port_value =
 	TOKEN_NUM_INITIALIZER(struct cmd_config_tunnel_udp_port, udp_port,
 			      UINT16);
@@ -8925,7 +8929,7 @@ cmdline_parse_token_num_t cmd_config_tunnel_udp_port_value =
 cmdline_parse_inst_t cmd_cfg_tunnel_udp_port = {
 	.f = cmd_cfg_tunnel_udp_port_parsed,
 	.data = NULL,
-	.help_str = "port config <port_id> udp_tunnel_port add|rm vxlan|geneve <udp_port>",
+	.help_str = "port config <port_id> udp_tunnel_port add|rm vxlan|geneve|vxlan-gpe <udp_port>",
 	.tokens = {
 		(void *)&cmd_config_tunnel_udp_port_port,
 		(void *)&cmd_config_tunnel_udp_port_config,
-- 
2.9.5

^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH v3 5/5] doc: add release note for VXLAN-GPE support
  2019-03-18 15:41   ` [PATCH v3 0/5] Supported VXLAN-GPE in i40e Qiming Yang
                       ` (4 preceding siblings ...)
  2019-03-18 15:41     ` [PATCH v3 4/5] app/testpmd: add VXLAN-GPE to tunnel type Qiming Yang
@ 2019-03-18 15:42     ` Qiming Yang
  2019-03-19 16:36     ` [PATCH v4 0/5] Supported VXLAN-GPE in i40e Qiming Yang
  6 siblings, 0 replies; 27+ messages in thread
From: Qiming Yang @ 2019-03-18 15:42 UTC (permalink / raw)
  To: dev; +Cc: qi.z.zhang, Qiming Yang

Updated release note.

Signed-off-by: Qiming Yang <qiming.yang@intel.com>
---
 doc/guides/rel_notes/release_19_05.rst | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/doc/guides/rel_notes/release_19_05.rst b/doc/guides/rel_notes/release_19_05.rst
index 61a2c73..c936f97 100644
--- a/doc/guides/rel_notes/release_19_05.rst
+++ b/doc/guides/rel_notes/release_19_05.rst
@@ -91,6 +91,12 @@ New Features
 
   * Added promiscuous mode support.
 
+* **Updated the i40e driver.**
+
+  New features for PF:
+
+  * Support for VXLAN-GPE packet.
+  * Added support for VXLAN-GPE classification.
 
 Removed Items
 -------------
-- 
2.9.5

^ permalink raw reply related	[flat|nested] 27+ messages in thread

* Re: [PATCH v4 0/5] Supported VXLAN-GPE in i40e
  2019-03-19 16:36     ` [PATCH v4 0/5] Supported VXLAN-GPE in i40e Qiming Yang
@ 2019-03-19 13:03       ` Zhang, Qi Z
  2019-03-19 16:36       ` [PATCH v4 1/5] eal: add VXLAN-GPE macro Qiming Yang
                         ` (4 subsequent siblings)
  5 siblings, 0 replies; 27+ messages in thread
From: Zhang, Qi Z @ 2019-03-19 13:03 UTC (permalink / raw)
  To: Yang, Qiming, dev



> -----Original Message-----
> From: Yang, Qiming
> Sent: Wednesday, March 20, 2019 12:37 AM
> To: dev@dpdk.org
> Cc: Zhang, Qi Z <qi.z.zhang@intel.com>; Yang, Qiming <qiming.yang@intel.com>
> Subject: [PATCH v4 0/5] Supported VXLAN-GPE in i40e
> 
> This patch set supported new packet type VXLAN-GPE and add support for
> VXLAN-GPE packet classification.
> 
> Acked-by: Qi Zhang <qi.z.zhang@intel.com>
> ---
> V4:
> 1. rebased to the latest code.
> 2. deleted misleading statement.
> 
> V3:
> 1. fixed issue in release note.
> 2. fixed check patch issue.
> 3. spilted eal related change to a new patch.
> 
> V2:
> 1. move testpmd related changes to a new patch.
> 2. added release note update.
> 
> 
> Qiming Yang (5):
>   eal: add VXLAN-GPE macro
>   net/i40e: add support for VXLAN-GPE
>   net/i40e: support VXLAN-GPE classification
>   app/testpmd: add VXLAN-GPE to tunnel type
>   doc: add release note for VXLAN-GPE support
> 
>  app/test-pmd/cmdline.c                 | 10 +++++++---
>  doc/guides/rel_notes/release_19_05.rst |  6 ++++++
>  drivers/net/i40e/i40e_ethdev.c         | 16 ++++++++++++----
>  lib/librte_ethdev/rte_eth_ctrl.h       |  1 +
>  4 files changed, 26 insertions(+), 7 deletions(-)
> 
> --
> 2.9.5

Applied to dpdk-next-net-intel.

Thanks
Qi

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [PATCH v4 1/5] eal: add VXLAN-GPE macro
  2019-03-19 16:36       ` [PATCH v4 1/5] eal: add VXLAN-GPE macro Qiming Yang
@ 2019-03-19 13:50         ` David Marchand
  2019-03-19 16:34           ` Ferruh Yigit
  0 siblings, 1 reply; 27+ messages in thread
From: David Marchand @ 2019-03-19 13:50 UTC (permalink / raw)
  To: Qiming Yang, Thomas Monjalon, Yigit, Ferruh, Andrew Rybchenko
  Cc: dev, Qi Zhang

eal: in the title ? we are in ethdev.

On Tue, Mar 19, 2019 at 10:14 AM Qiming Yang <qiming.yang@intel.com> wrote:

> This patch added VXLAN-GPE macro in rte_eth_tunnel_type.
>
> Signed-off-by: Qiming Yang <qiming.yang@intel.com>
> ---
>  lib/librte_ethdev/rte_eth_ctrl.h | 1 +
>  1 file changed, 1 insertion(+)
>
> diff --git a/lib/librte_ethdev/rte_eth_ctrl.h
> b/lib/librte_ethdev/rte_eth_ctrl.h
> index 5ea8ae2..b341634 100644
> --- a/lib/librte_ethdev/rte_eth_ctrl.h
> +++ b/lib/librte_ethdev/rte_eth_ctrl.h
> @@ -229,6 +229,7 @@ enum rte_eth_tunnel_type {
>         RTE_TUNNEL_TYPE_NVGRE,
>         RTE_TUNNEL_TYPE_IP_IN_GRE,
>         RTE_L2_TUNNEL_TYPE_E_TAG,
> +       RTE_TUNNEL_TYPE_VXLAN_GPE,
>         RTE_TUNNEL_TYPE_MAX,
>  };
>


Comments on this patch:
- is this the normal process to get an ethdev api update go through
dpdk-next-net-intel without an ethdev maintainer acking?
- does this patch introduce an api/abi breakage? (validate-abi.sh did not
complain, to my surprise)


-- 
David Marchand

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [PATCH v4 1/5] eal: add VXLAN-GPE macro
  2019-03-19 13:50         ` David Marchand
@ 2019-03-19 16:34           ` Ferruh Yigit
  0 siblings, 0 replies; 27+ messages in thread
From: Ferruh Yigit @ 2019-03-19 16:34 UTC (permalink / raw)
  To: David Marchand, Qiming Yang, Thomas Monjalon, Andrew Rybchenko
  Cc: dev, Qi Zhang

On 3/19/2019 1:50 PM, David Marchand wrote:
> eal: in the title ? we are in ethdev.
> 
> On Tue, Mar 19, 2019 at 10:14 AM Qiming Yang <qiming.yang@intel.com> wrote:
> 
>> This patch added VXLAN-GPE macro in rte_eth_tunnel_type.
>>
>> Signed-off-by: Qiming Yang <qiming.yang@intel.com>
>> ---
>>  lib/librte_ethdev/rte_eth_ctrl.h | 1 +
>>  1 file changed, 1 insertion(+)
>>
>> diff --git a/lib/librte_ethdev/rte_eth_ctrl.h
>> b/lib/librte_ethdev/rte_eth_ctrl.h
>> index 5ea8ae2..b341634 100644
>> --- a/lib/librte_ethdev/rte_eth_ctrl.h
>> +++ b/lib/librte_ethdev/rte_eth_ctrl.h
>> @@ -229,6 +229,7 @@ enum rte_eth_tunnel_type {
>>         RTE_TUNNEL_TYPE_NVGRE,
>>         RTE_TUNNEL_TYPE_IP_IN_GRE,
>>         RTE_L2_TUNNEL_TYPE_E_TAG,
>> +       RTE_TUNNEL_TYPE_VXLAN_GPE,
>>         RTE_TUNNEL_TYPE_MAX,
>>  };
>>
> 
> 
> Comments on this patch:
> - is this the normal process to get an ethdev api update go through
> dpdk-next-net-intel without an ethdev maintainer acking?

No.
Vendor sub-trees are for the driver only changes.

> - does this patch introduce an api/abi breakage? (validate-abi.sh did not
> complain, to my surprise)
> 

^ permalink raw reply	[flat|nested] 27+ messages in thread

* [PATCH v4 0/5] Supported VXLAN-GPE in i40e
  2019-03-18 15:41   ` [PATCH v3 0/5] Supported VXLAN-GPE in i40e Qiming Yang
                       ` (5 preceding siblings ...)
  2019-03-18 15:42     ` [PATCH v3 5/5] doc: add release note for VXLAN-GPE support Qiming Yang
@ 2019-03-19 16:36     ` Qiming Yang
  2019-03-19 13:03       ` Zhang, Qi Z
                         ` (5 more replies)
  6 siblings, 6 replies; 27+ messages in thread
From: Qiming Yang @ 2019-03-19 16:36 UTC (permalink / raw)
  To: dev; +Cc: qi.z.zhang, Qiming Yang

This patch set supported new packet type VXLAN-GPE and add
support for VXLAN-GPE packet classification.

Acked-by: Qi Zhang <qi.z.zhang@intel.com>
---
V4:
1. rebased to the latest code.
2. deleted misleading statement.

V3:
1. fixed issue in release note.
2. fixed check patch issue.
3. spilted eal related change to a new patch.

V2:
1. move testpmd related changes to a new patch.
2. added release note update.


Qiming Yang (5):
  eal: add VXLAN-GPE macro
  net/i40e: add support for VXLAN-GPE
  net/i40e: support VXLAN-GPE classification
  app/testpmd: add VXLAN-GPE to tunnel type
  doc: add release note for VXLAN-GPE support

 app/test-pmd/cmdline.c                 | 10 +++++++---
 doc/guides/rel_notes/release_19_05.rst |  6 ++++++
 drivers/net/i40e/i40e_ethdev.c         | 16 ++++++++++++----
 lib/librte_ethdev/rte_eth_ctrl.h       |  1 +
 4 files changed, 26 insertions(+), 7 deletions(-)

-- 
2.9.5

^ permalink raw reply	[flat|nested] 27+ messages in thread

* [PATCH v4 1/5] eal: add VXLAN-GPE macro
  2019-03-19 16:36     ` [PATCH v4 0/5] Supported VXLAN-GPE in i40e Qiming Yang
  2019-03-19 13:03       ` Zhang, Qi Z
@ 2019-03-19 16:36       ` Qiming Yang
  2019-03-19 13:50         ` David Marchand
  2019-03-19 16:36       ` [PATCH v4 2/5] net/i40e: add support for VXLAN-GPE Qiming Yang
                         ` (3 subsequent siblings)
  5 siblings, 1 reply; 27+ messages in thread
From: Qiming Yang @ 2019-03-19 16:36 UTC (permalink / raw)
  To: dev; +Cc: qi.z.zhang, Qiming Yang

This patch added VXLAN-GPE macro in rte_eth_tunnel_type.

Signed-off-by: Qiming Yang <qiming.yang@intel.com>
---
 lib/librte_ethdev/rte_eth_ctrl.h | 1 +
 1 file changed, 1 insertion(+)

diff --git a/lib/librte_ethdev/rte_eth_ctrl.h b/lib/librte_ethdev/rte_eth_ctrl.h
index 5ea8ae2..b341634 100644
--- a/lib/librte_ethdev/rte_eth_ctrl.h
+++ b/lib/librte_ethdev/rte_eth_ctrl.h
@@ -229,6 +229,7 @@ enum rte_eth_tunnel_type {
 	RTE_TUNNEL_TYPE_NVGRE,
 	RTE_TUNNEL_TYPE_IP_IN_GRE,
 	RTE_L2_TUNNEL_TYPE_E_TAG,
+	RTE_TUNNEL_TYPE_VXLAN_GPE,
 	RTE_TUNNEL_TYPE_MAX,
 };
 
-- 
2.9.5

^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH v4 2/5] net/i40e: add support for VXLAN-GPE
  2019-03-19 16:36     ` [PATCH v4 0/5] Supported VXLAN-GPE in i40e Qiming Yang
  2019-03-19 13:03       ` Zhang, Qi Z
  2019-03-19 16:36       ` [PATCH v4 1/5] eal: add VXLAN-GPE macro Qiming Yang
@ 2019-03-19 16:36       ` Qiming Yang
  2019-03-19 16:36       ` [PATCH v4 3/5] net/i40e: support VXLAN-GPE classification Qiming Yang
                         ` (2 subsequent siblings)
  5 siblings, 0 replies; 27+ messages in thread
From: Qiming Yang @ 2019-03-19 16:36 UTC (permalink / raw)
  To: dev; +Cc: qi.z.zhang, Qiming Yang

Add new protocol type VXLAN-GPE support for UDP tunnel.
inner IP/TCP/UDP checksum and RSS configuration shared
the same implementation of VXLAN.

Signed-off-by: Qiming Yang <qiming.yang@intel.com>
---
 drivers/net/i40e/i40e_ethdev.c | 13 +++++++++----
 1 file changed, 9 insertions(+), 4 deletions(-)

diff --git a/drivers/net/i40e/i40e_ethdev.c b/drivers/net/i40e/i40e_ethdev.c
index 8191a6a..0debee5 100644
--- a/drivers/net/i40e/i40e_ethdev.c
+++ b/drivers/net/i40e/i40e_ethdev.c
@@ -8368,7 +8368,7 @@ i40e_get_vxlan_port_idx(struct i40e_pf *pf, uint16_t port)
 }
 
 static int
-i40e_add_vxlan_port(struct i40e_pf *pf, uint16_t port)
+i40e_add_vxlan_port(struct i40e_pf *pf, uint16_t port, int udp_type)
 {
 	int  idx, ret;
 	uint8_t filter_idx;
@@ -8391,7 +8391,7 @@ i40e_add_vxlan_port(struct i40e_pf *pf, uint16_t port)
 		return -ENOSPC;
 	}
 
-	ret =  i40e_aq_add_udp_tunnel(hw, port, I40E_AQC_TUNNEL_TYPE_VXLAN,
+	ret =  i40e_aq_add_udp_tunnel(hw, port, udp_type,
 					&filter_idx, NULL);
 	if (ret < 0) {
 		PMD_DRV_LOG(ERR, "Failed to add VXLAN UDP port %d", port);
@@ -8459,9 +8459,13 @@ i40e_dev_udp_tunnel_port_add(struct rte_eth_dev *dev,
 
 	switch (udp_tunnel->prot_type) {
 	case RTE_TUNNEL_TYPE_VXLAN:
-		ret = i40e_add_vxlan_port(pf, udp_tunnel->udp_port);
+		ret = i40e_add_vxlan_port(pf, udp_tunnel->udp_port,
+					  I40E_AQC_TUNNEL_TYPE_VXLAN);
+		break;
+	case RTE_TUNNEL_TYPE_VXLAN_GPE:
+		ret = i40e_add_vxlan_port(pf, udp_tunnel->udp_port,
+					  I40E_AQC_TUNNEL_TYPE_VXLAN_GPE);
 		break;
-
 	case RTE_TUNNEL_TYPE_GENEVE:
 	case RTE_TUNNEL_TYPE_TEREDO:
 		PMD_DRV_LOG(ERR, "Tunnel type is not supported now.");
@@ -8490,6 +8494,7 @@ i40e_dev_udp_tunnel_port_del(struct rte_eth_dev *dev,
 
 	switch (udp_tunnel->prot_type) {
 	case RTE_TUNNEL_TYPE_VXLAN:
+	case RTE_TUNNEL_TYPE_VXLAN_GPE:
 		ret = i40e_del_vxlan_port(pf, udp_tunnel->udp_port);
 		break;
 	case RTE_TUNNEL_TYPE_GENEVE:
-- 
2.9.5

^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH v4 3/5] net/i40e: support VXLAN-GPE classification
  2019-03-19 16:36     ` [PATCH v4 0/5] Supported VXLAN-GPE in i40e Qiming Yang
                         ` (2 preceding siblings ...)
  2019-03-19 16:36       ` [PATCH v4 2/5] net/i40e: add support for VXLAN-GPE Qiming Yang
@ 2019-03-19 16:36       ` Qiming Yang
  2019-03-19 16:36       ` [PATCH v4 4/5] app/testpmd: add VXLAN-GPE to tunnel type Qiming Yang
  2019-03-19 16:36       ` [PATCH v4 5/5] doc: add release note for VXLAN-GPE support Qiming Yang
  5 siblings, 0 replies; 27+ messages in thread
From: Qiming Yang @ 2019-03-19 16:36 UTC (permalink / raw)
  To: dev; +Cc: qi.z.zhang, Qiming Yang

Added VXLAN-GPE tunnel filter, supported filter to queue.

Signed-off-by: Qiming Yang <qiming.yang@intel.com>
---
 drivers/net/i40e/i40e_ethdev.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/drivers/net/i40e/i40e_ethdev.c b/drivers/net/i40e/i40e_ethdev.c
index 0debee5..dbcacb0 100644
--- a/drivers/net/i40e/i40e_ethdev.c
+++ b/drivers/net/i40e/i40e_ethdev.c
@@ -7720,6 +7720,9 @@ i40e_dev_tunnel_filter_set(struct i40e_pf *pf,
 	case RTE_TUNNEL_TYPE_IP_IN_GRE:
 		tun_type = I40E_AQC_ADD_CLOUD_TNL_TYPE_IP;
 		break;
+	case RTE_TUNNEL_TYPE_VXLAN_GPE:
+		tun_type = I40E_AQC_ADD_CLOUD_TNL_TYPE_VXLAN_GPE;
+		break;
 	default:
 		/* Other tunnel types is not supported. */
 		PMD_DRV_LOG(ERR, "tunnel type is not supported.");
-- 
2.9.5

^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH v4 4/5] app/testpmd: add VXLAN-GPE to tunnel type
  2019-03-19 16:36     ` [PATCH v4 0/5] Supported VXLAN-GPE in i40e Qiming Yang
                         ` (3 preceding siblings ...)
  2019-03-19 16:36       ` [PATCH v4 3/5] net/i40e: support VXLAN-GPE classification Qiming Yang
@ 2019-03-19 16:36       ` Qiming Yang
  2019-03-27 11:04         ` Iremonger, Bernard
  2019-03-19 16:36       ` [PATCH v4 5/5] doc: add release note for VXLAN-GPE support Qiming Yang
  5 siblings, 1 reply; 27+ messages in thread
From: Qiming Yang @ 2019-03-19 16:36 UTC (permalink / raw)
  To: dev; +Cc: qi.z.zhang, Qiming Yang

This patch added new item "vxlan-gpe" to tunnel_type to
support new VXLAN-GPE packet type, and its clasification.

Signed-off-by: Qiming Yang <qiming.yang@intel.com>
---
 app/test-pmd/cmdline.c | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/app/test-pmd/cmdline.c b/app/test-pmd/cmdline.c
index db53cc0..08a554c 100644
--- a/app/test-pmd/cmdline.c
+++ b/app/test-pmd/cmdline.c
@@ -8710,6 +8710,8 @@ cmd_tunnel_filter_parsed(void *parsed_result,
 
 	if (!strcmp(res->tunnel_type, "vxlan"))
 		tunnel_filter_conf.tunnel_type = RTE_TUNNEL_TYPE_VXLAN;
+	else if (!strcmp(res->tunnel_type, "vxlan-gpe"))
+		tunnel_filter_conf.tunnel_type = RTE_TUNNEL_TYPE_VXLAN_GPE;
 	else if (!strcmp(res->tunnel_type, "nvgre"))
 		tunnel_filter_conf.tunnel_type = RTE_TUNNEL_TYPE_NVGRE;
 	else if (!strcmp(res->tunnel_type, "ipingre"))
@@ -8759,7 +8761,7 @@ cmdline_parse_token_ipaddr_t cmd_tunnel_filter_ip_value =
 	ip_value);
 cmdline_parse_token_string_t cmd_tunnel_filter_tunnel_type =
 	TOKEN_STRING_INITIALIZER(struct cmd_tunnel_filter_result,
-	tunnel_type, "vxlan#nvgre#ipingre");
+	tunnel_type, "vxlan#nvgre#ipingre#vxlan-gpe");
 
 cmdline_parse_token_string_t cmd_tunnel_filter_filter_type =
 	TOKEN_STRING_INITIALIZER(struct cmd_tunnel_filter_result,
@@ -8883,6 +8885,8 @@ cmd_cfg_tunnel_udp_port_parsed(void *parsed_result,
 		tunnel_udp.prot_type = RTE_TUNNEL_TYPE_VXLAN;
 	} else if (!strcmp(res->tunnel_type, "geneve")) {
 		tunnel_udp.prot_type = RTE_TUNNEL_TYPE_GENEVE;
+	} else if (!strcmp(res->tunnel_type, "vxlan-gpe")) {
+		tunnel_udp.prot_type = RTE_TUNNEL_TYPE_VXLAN_GPE;
 	} else {
 		printf("Invalid tunnel type\n");
 		return;
@@ -8917,7 +8921,7 @@ cmdline_parse_token_string_t cmd_config_tunnel_udp_port_action =
 				 "add#rm");
 cmdline_parse_token_string_t cmd_config_tunnel_udp_port_tunnel_type =
 	TOKEN_STRING_INITIALIZER(struct cmd_config_tunnel_udp_port, tunnel_type,
-				 "vxlan#geneve");
+				 "vxlan#geneve#vxlan-gpe");
 cmdline_parse_token_num_t cmd_config_tunnel_udp_port_value =
 	TOKEN_NUM_INITIALIZER(struct cmd_config_tunnel_udp_port, udp_port,
 			      UINT16);
@@ -8925,7 +8929,7 @@ cmdline_parse_token_num_t cmd_config_tunnel_udp_port_value =
 cmdline_parse_inst_t cmd_cfg_tunnel_udp_port = {
 	.f = cmd_cfg_tunnel_udp_port_parsed,
 	.data = NULL,
-	.help_str = "port config <port_id> udp_tunnel_port add|rm vxlan|geneve <udp_port>",
+	.help_str = "port config <port_id> udp_tunnel_port add|rm vxlan|geneve|vxlan-gpe <udp_port>",
 	.tokens = {
 		(void *)&cmd_config_tunnel_udp_port_port,
 		(void *)&cmd_config_tunnel_udp_port_config,
-- 
2.9.5

^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH v4 5/5] doc: add release note for VXLAN-GPE support
  2019-03-19 16:36     ` [PATCH v4 0/5] Supported VXLAN-GPE in i40e Qiming Yang
                         ` (4 preceding siblings ...)
  2019-03-19 16:36       ` [PATCH v4 4/5] app/testpmd: add VXLAN-GPE to tunnel type Qiming Yang
@ 2019-03-19 16:36       ` Qiming Yang
  5 siblings, 0 replies; 27+ messages in thread
From: Qiming Yang @ 2019-03-19 16:36 UTC (permalink / raw)
  To: dev; +Cc: qi.z.zhang, Qiming Yang

Updated release note.

Signed-off-by: Qiming Yang <qiming.yang@intel.com>
---
 doc/guides/rel_notes/release_19_05.rst | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/doc/guides/rel_notes/release_19_05.rst b/doc/guides/rel_notes/release_19_05.rst
index 610c4cd..ab184df 100644
--- a/doc/guides/rel_notes/release_19_05.rst
+++ b/doc/guides/rel_notes/release_19_05.rst
@@ -95,6 +95,12 @@ New Features
 
    Added support of SSE and AVX2 instructions in ICE RX and TX path.
 
+* **Updated the i40e driver.**
+
+  New features for PF:
+  
+  * Added support for VXLAN-GPE packet.
+  * Added support for VXLAN-GPE classification.
 
 Removed Items
 -------------
-- 
2.9.5

^ permalink raw reply related	[flat|nested] 27+ messages in thread

* Re: [PATCH v4 4/5] app/testpmd: add VXLAN-GPE to tunnel type
  2019-03-19 16:36       ` [PATCH v4 4/5] app/testpmd: add VXLAN-GPE to tunnel type Qiming Yang
@ 2019-03-27 11:04         ` Iremonger, Bernard
  2019-03-28 10:49           ` Iremonger, Bernard
  2019-04-03  5:29           ` Yang, Qiming
  0 siblings, 2 replies; 27+ messages in thread
From: Iremonger, Bernard @ 2019-03-27 11:04 UTC (permalink / raw)
  To: Yang, Qiming, dev; +Cc: Zhang, Qi Z, Yang, Qiming

Hi Qiminq,

> -----Original Message-----
> From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Qiming Yang
> Sent: Tuesday, March 19, 2019 4:37 PM
> To: dev@dpdk.org
> Cc: Zhang, Qi Z <qi.z.zhang@intel.com>; Yang, Qiming
> <qiming.yang@intel.com>
> Subject: [dpdk-dev] [PATCH v4 4/5] app/testpmd: add VXLAN-GPE to tunnel
> type
> 
> This patch added new item "vxlan-gpe" to tunnel_type to support new
> VXLAN-GPE packet type, and its clasification.
> 
> Signed-off-by: Qiming Yang <qiming.yang@intel.com>
> ---
>  app/test-pmd/cmdline.c | 10 +++++++---
>  1 file changed, 7 insertions(+), 3 deletions(-)
> 
> diff --git a/app/test-pmd/cmdline.c b/app/test-pmd/cmdline.c index
> db53cc0..08a554c 100644
> --- a/app/test-pmd/cmdline.c
> +++ b/app/test-pmd/cmdline.c
> @@ -8710,6 +8710,8 @@ cmd_tunnel_filter_parsed(void *parsed_result,
> 
>  	if (!strcmp(res->tunnel_type, "vxlan"))
>  		tunnel_filter_conf.tunnel_type =
> RTE_TUNNEL_TYPE_VXLAN;
> +	else if (!strcmp(res->tunnel_type, "vxlan-gpe"))
> +		tunnel_filter_conf.tunnel_type =
> RTE_TUNNEL_TYPE_VXLAN_GPE;
>  	else if (!strcmp(res->tunnel_type, "nvgre"))
>  		tunnel_filter_conf.tunnel_type =
> RTE_TUNNEL_TYPE_NVGRE;
>  	else if (!strcmp(res->tunnel_type, "ipingre")) @@ -8759,7 +8761,7
> @@ cmdline_parse_token_ipaddr_t cmd_tunnel_filter_ip_value =
>  	ip_value);
>  cmdline_parse_token_string_t cmd_tunnel_filter_tunnel_type =
>  	TOKEN_STRING_INITIALIZER(struct cmd_tunnel_filter_result,
> -	tunnel_type, "vxlan#nvgre#ipingre");
> +	tunnel_type, "vxlan#nvgre#ipingre#vxlan-gpe");
> 
>  cmdline_parse_token_string_t cmd_tunnel_filter_filter_type =
>  	TOKEN_STRING_INITIALIZER(struct cmd_tunnel_filter_result, @@ -
> 8883,6 +8885,8 @@ cmd_cfg_tunnel_udp_port_parsed(void *parsed_result,
>  		tunnel_udp.prot_type = RTE_TUNNEL_TYPE_VXLAN;
>  	} else if (!strcmp(res->tunnel_type, "geneve")) {
>  		tunnel_udp.prot_type = RTE_TUNNEL_TYPE_GENEVE;
> +	} else if (!strcmp(res->tunnel_type, "vxlan-gpe")) {
> +		tunnel_udp.prot_type = RTE_TUNNEL_TYPE_VXLAN_GPE;
>  	} else {
>  		printf("Invalid tunnel type\n");
>  		return;
> @@ -8917,7 +8921,7 @@ cmdline_parse_token_string_t
> cmd_config_tunnel_udp_port_action =
>  				 "add#rm");
>  cmdline_parse_token_string_t cmd_config_tunnel_udp_port_tunnel_type
> =
>  	TOKEN_STRING_INITIALIZER(struct cmd_config_tunnel_udp_port,
> tunnel_type,
> -				 "vxlan#geneve");
> +				 "vxlan#geneve#vxlan-gpe");
>  cmdline_parse_token_num_t cmd_config_tunnel_udp_port_value =
>  	TOKEN_NUM_INITIALIZER(struct cmd_config_tunnel_udp_port,
> udp_port,
>  			      UINT16);
> @@ -8925,7 +8929,7 @@ cmdline_parse_token_num_t
> cmd_config_tunnel_udp_port_value =  cmdline_parse_inst_t
> cmd_cfg_tunnel_udp_port = {
>  	.f = cmd_cfg_tunnel_udp_port_parsed,
>  	.data = NULL,
> -	.help_str = "port config <port_id> udp_tunnel_port add|rm
> vxlan|geneve <udp_port>",
> +	.help_str = "port config <port_id> udp_tunnel_port add|rm
> +vxlan|geneve|vxlan-gpe <udp_port>",
>  	.tokens = {
>  		(void *)&cmd_config_tunnel_udp_port_port,
>  		(void *)&cmd_config_tunnel_udp_port_config,
> --
> 2.9.5

Should the help strings at lines 374, 378 , 861 in cmdline.c be updated for vxlan-gpe?
Should the help string at lines 2188,  8779 in cmdline.c be updated for vxlan-gpe?

The function flowtype_to_str()  at line 11922 should be updated for for vxlan-gpe.

There should also be an update in  doc/guides/tesptpmd_app_ug/*.rst  for vxlan-gpe.

Regards,

Bernard.

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [PATCH v4 4/5] app/testpmd: add VXLAN-GPE to tunnel type
  2019-03-27 11:04         ` Iremonger, Bernard
@ 2019-03-28 10:49           ` Iremonger, Bernard
  2019-04-03  5:29           ` Yang, Qiming
  1 sibling, 0 replies; 27+ messages in thread
From: Iremonger, Bernard @ 2019-03-28 10:49 UTC (permalink / raw)
  To: Iremonger, Bernard, Yang, Qiming, dev; +Cc: Zhang, Qi Z, Yang, Qiming

Hi Qiming,

<snip>
> > Subject: [dpdk-dev] [PATCH v4 4/5] app/testpmd: add VXLAN-GPE to
> > tunnel type
> >
> > This patch added new item "vxlan-gpe" to tunnel_type to support new
> > VXLAN-GPE packet type, and its clasification.
> >
> > Signed-off-by: Qiming Yang <qiming.yang@intel.com>
> > ---
> >  app/test-pmd/cmdline.c | 10 +++++++---
> >  1 file changed, 7 insertions(+), 3 deletions(-)
> >
> > diff --git a/app/test-pmd/cmdline.c b/app/test-pmd/cmdline.c index
> > db53cc0..08a554c 100644
> > --- a/app/test-pmd/cmdline.c
> > +++ b/app/test-pmd/cmdline.c
> > @@ -8710,6 +8710,8 @@ cmd_tunnel_filter_parsed(void *parsed_result,
> >
> >  	if (!strcmp(res->tunnel_type, "vxlan"))
> >  		tunnel_filter_conf.tunnel_type =
> > RTE_TUNNEL_TYPE_VXLAN;
> > +	else if (!strcmp(res->tunnel_type, "vxlan-gpe"))
> > +		tunnel_filter_conf.tunnel_type =
> > RTE_TUNNEL_TYPE_VXLAN_GPE;
> >  	else if (!strcmp(res->tunnel_type, "nvgre"))
> >  		tunnel_filter_conf.tunnel_type =
> > RTE_TUNNEL_TYPE_NVGRE;
> >  	else if (!strcmp(res->tunnel_type, "ipingre")) @@ -8759,7 +8761,7
> @@
> > cmdline_parse_token_ipaddr_t cmd_tunnel_filter_ip_value =
> >  	ip_value);
> >  cmdline_parse_token_string_t cmd_tunnel_filter_tunnel_type =
> >  	TOKEN_STRING_INITIALIZER(struct cmd_tunnel_filter_result,
> > -	tunnel_type, "vxlan#nvgre#ipingre");
> > +	tunnel_type, "vxlan#nvgre#ipingre#vxlan-gpe");
> >
> >  cmdline_parse_token_string_t cmd_tunnel_filter_filter_type =
> >  	TOKEN_STRING_INITIALIZER(struct cmd_tunnel_filter_result, @@ -
> > 8883,6 +8885,8 @@ cmd_cfg_tunnel_udp_port_parsed(void
> *parsed_result,
> >  		tunnel_udp.prot_type = RTE_TUNNEL_TYPE_VXLAN;
> >  	} else if (!strcmp(res->tunnel_type, "geneve")) {
> >  		tunnel_udp.prot_type = RTE_TUNNEL_TYPE_GENEVE;
> > +	} else if (!strcmp(res->tunnel_type, "vxlan-gpe")) {
> > +		tunnel_udp.prot_type = RTE_TUNNEL_TYPE_VXLAN_GPE;
> >  	} else {
> >  		printf("Invalid tunnel type\n");
> >  		return;
> > @@ -8917,7 +8921,7 @@ cmdline_parse_token_string_t
> > cmd_config_tunnel_udp_port_action =
> >  				 "add#rm");
> >  cmdline_parse_token_string_t
> cmd_config_tunnel_udp_port_tunnel_type
> > =
> >  	TOKEN_STRING_INITIALIZER(struct cmd_config_tunnel_udp_port,
> > tunnel_type,
> > -				 "vxlan#geneve");
> > +				 "vxlan#geneve#vxlan-gpe");
> >  cmdline_parse_token_num_t cmd_config_tunnel_udp_port_value =
> >  	TOKEN_NUM_INITIALIZER(struct cmd_config_tunnel_udp_port,
> udp_port,
> >  			      UINT16);
> > @@ -8925,7 +8929,7 @@ cmdline_parse_token_num_t
> > cmd_config_tunnel_udp_port_value =  cmdline_parse_inst_t
> > cmd_cfg_tunnel_udp_port = {
> >  	.f = cmd_cfg_tunnel_udp_port_parsed,
> >  	.data = NULL,
> > -	.help_str = "port config <port_id> udp_tunnel_port add|rm
> > vxlan|geneve <udp_port>",
> > +	.help_str = "port config <port_id> udp_tunnel_port add|rm
> > +vxlan|geneve|vxlan-gpe <udp_port>",
> >  	.tokens = {
> >  		(void *)&cmd_config_tunnel_udp_port_port,
> >  		(void *)&cmd_config_tunnel_udp_port_config,
> > --
> > 2.9.5
> 
> Should the help strings at lines 374, 378 , 861 in cmdline.c be updated for
> vxlan-gpe?
> Should the help string at lines 2188,  8779 in cmdline.c be updated for vxlan-
> gpe?
> 
> The function flowtype_to_str()  at line 11922 should be updated for for
> vxlan-gpe.
> 
> There should also be an update in  doc/guides/tesptpmd_app_ug/*.rst  for
> vxlan-gpe.
> 
> Regards,
> 
> Bernard.
> 

Could you also check that the usage() function is updated in dpdk/app/test-pmd/parameters.c

Regards,

Bernard.

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [PATCH v4 4/5] app/testpmd: add VXLAN-GPE to tunnel type
  2019-03-27 11:04         ` Iremonger, Bernard
  2019-03-28 10:49           ` Iremonger, Bernard
@ 2019-04-03  5:29           ` Yang, Qiming
  1 sibling, 0 replies; 27+ messages in thread
From: Yang, Qiming @ 2019-04-03  5:29 UTC (permalink / raw)
  To: Iremonger, Bernard, dev; +Cc: Zhang, Qi Z

Thanks for your reminder, I'll add doc update later.

Qiming

> -----Original Message-----
> From: Iremonger, Bernard
> Sent: Wednesday, March 27, 2019 7:04 PM
> To: Yang, Qiming <qiming.yang@intel.com>; dev@dpdk.org
> Cc: Zhang, Qi Z <qi.z.zhang@intel.com>; Yang, Qiming
> <qiming.yang@intel.com>
> Subject: RE: [dpdk-dev] [PATCH v4 4/5] app/testpmd: add VXLAN-GPE to
> tunnel type
> 
> Hi Qiminq,
> 
> > -----Original Message-----
> > From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Qiming Yang
> > Sent: Tuesday, March 19, 2019 4:37 PM
> > To: dev@dpdk.org
> > Cc: Zhang, Qi Z <qi.z.zhang@intel.com>; Yang, Qiming
> > <qiming.yang@intel.com>
> > Subject: [dpdk-dev] [PATCH v4 4/5] app/testpmd: add VXLAN-GPE to
> > tunnel type
> >
> > This patch added new item "vxlan-gpe" to tunnel_type to support new
> > VXLAN-GPE packet type, and its clasification.
> >
> > Signed-off-by: Qiming Yang <qiming.yang@intel.com>
> > ---
> >  app/test-pmd/cmdline.c | 10 +++++++---
> >  1 file changed, 7 insertions(+), 3 deletions(-)
> >
> > diff --git a/app/test-pmd/cmdline.c b/app/test-pmd/cmdline.c index
> > db53cc0..08a554c 100644
> > --- a/app/test-pmd/cmdline.c
> > +++ b/app/test-pmd/cmdline.c
> > @@ -8710,6 +8710,8 @@ cmd_tunnel_filter_parsed(void *parsed_result,
> >
> >  	if (!strcmp(res->tunnel_type, "vxlan"))
> >  		tunnel_filter_conf.tunnel_type =
> > RTE_TUNNEL_TYPE_VXLAN;
> > +	else if (!strcmp(res->tunnel_type, "vxlan-gpe"))
> > +		tunnel_filter_conf.tunnel_type =
> > RTE_TUNNEL_TYPE_VXLAN_GPE;
> >  	else if (!strcmp(res->tunnel_type, "nvgre"))
> >  		tunnel_filter_conf.tunnel_type =
> > RTE_TUNNEL_TYPE_NVGRE;
> >  	else if (!strcmp(res->tunnel_type, "ipingre")) @@ -8759,7 +8761,7
> @@
> > cmdline_parse_token_ipaddr_t cmd_tunnel_filter_ip_value =
> >  	ip_value);
> >  cmdline_parse_token_string_t cmd_tunnel_filter_tunnel_type =
> >  	TOKEN_STRING_INITIALIZER(struct cmd_tunnel_filter_result,
> > -	tunnel_type, "vxlan#nvgre#ipingre");
> > +	tunnel_type, "vxlan#nvgre#ipingre#vxlan-gpe");
> >
> >  cmdline_parse_token_string_t cmd_tunnel_filter_filter_type =
> >  	TOKEN_STRING_INITIALIZER(struct cmd_tunnel_filter_result, @@ -
> > 8883,6 +8885,8 @@ cmd_cfg_tunnel_udp_port_parsed(void
> *parsed_result,
> >  		tunnel_udp.prot_type = RTE_TUNNEL_TYPE_VXLAN;
> >  	} else if (!strcmp(res->tunnel_type, "geneve")) {
> >  		tunnel_udp.prot_type = RTE_TUNNEL_TYPE_GENEVE;
> > +	} else if (!strcmp(res->tunnel_type, "vxlan-gpe")) {
> > +		tunnel_udp.prot_type = RTE_TUNNEL_TYPE_VXLAN_GPE;
> >  	} else {
> >  		printf("Invalid tunnel type\n");
> >  		return;
> > @@ -8917,7 +8921,7 @@ cmdline_parse_token_string_t
> > cmd_config_tunnel_udp_port_action =
> >  				 "add#rm");
> >  cmdline_parse_token_string_t cmd_config_tunnel_udp_port_tunnel_type
> > =
> >  	TOKEN_STRING_INITIALIZER(struct cmd_config_tunnel_udp_port,
> > tunnel_type,
> > -				 "vxlan#geneve");
> > +				 "vxlan#geneve#vxlan-gpe");
> >  cmdline_parse_token_num_t cmd_config_tunnel_udp_port_value =
> >  	TOKEN_NUM_INITIALIZER(struct cmd_config_tunnel_udp_port,
> udp_port,
> >  			      UINT16);
> > @@ -8925,7 +8929,7 @@ cmdline_parse_token_num_t
> > cmd_config_tunnel_udp_port_value =  cmdline_parse_inst_t
> > cmd_cfg_tunnel_udp_port = {
> >  	.f = cmd_cfg_tunnel_udp_port_parsed,
> >  	.data = NULL,
> > -	.help_str = "port config <port_id> udp_tunnel_port add|rm
> > vxlan|geneve <udp_port>",
> > +	.help_str = "port config <port_id> udp_tunnel_port add|rm
> > +vxlan|geneve|vxlan-gpe <udp_port>",
> >  	.tokens = {
> >  		(void *)&cmd_config_tunnel_udp_port_port,
> >  		(void *)&cmd_config_tunnel_udp_port_config,
> > --
> > 2.9.5
> 
> Should the help strings at lines 374, 378 , 861 in cmdline.c be updated for
> vxlan-gpe?
> Should the help string at lines 2188,  8779 in cmdline.c be updated for vxlan-
> gpe?
> 
> The function flowtype_to_str()  at line 11922 should be updated for for
> vxlan-gpe.
> 
> There should also be an update in  doc/guides/tesptpmd_app_ug/*.rst  for
> vxlan-gpe.
> 
> Regards,
> 
> Bernard.
> 

^ permalink raw reply	[flat|nested] 27+ messages in thread

end of thread, other threads:[~2019-04-03  5:29 UTC | newest]

Thread overview: 27+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-01-02 14:38 [PATCH 1/2] net/i40e: add support for VXLAN-GPE Qiming Yang
2019-01-02 14:38 ` [PATCH 2/2] net/i40e: support VXLAN-GPE classification Qiming Yang
2019-03-18 13:32 ` [PATCH v2 0/4] Supported VXLAN-GPE in i40e Qiming Yang
2019-03-18 13:32   ` [PATCH v2 1/4] net/i40e: add support for VXLAN-GPE Qiming Yang
2019-03-18 13:32   ` [PATCH v2 2/4] net/i40e: support VXLAN-GPE classification Qiming Yang
2019-03-18 13:32   ` [PATCH v2 3/4] app/testpmd: add VXLAN-GPE to tunnel type Qiming Yang
2019-03-18 13:32   ` [PATCH v2 4/4] doc: add release note for VXLAN-GPE support Qiming Yang
2019-03-18 15:41   ` [PATCH v3 0/5] Supported VXLAN-GPE in i40e Qiming Yang
2019-03-18 12:33     ` Zhang, Qi Z
2019-03-18 15:41     ` [PATCH v3 1/5] eal: add VXLAN-GPE macro Qiming Yang
2019-03-18 15:41     ` [PATCH v3 2/5] net/i40e: add support for VXLAN-GPE Qiming Yang
2019-03-18 12:25       ` Zhang, Qi Z
2019-03-18 15:41     ` [PATCH v3 3/5] net/i40e: support VXLAN-GPE classification Qiming Yang
2019-03-18 15:41     ` [PATCH v3 4/5] app/testpmd: add VXLAN-GPE to tunnel type Qiming Yang
2019-03-18 15:42     ` [PATCH v3 5/5] doc: add release note for VXLAN-GPE support Qiming Yang
2019-03-19 16:36     ` [PATCH v4 0/5] Supported VXLAN-GPE in i40e Qiming Yang
2019-03-19 13:03       ` Zhang, Qi Z
2019-03-19 16:36       ` [PATCH v4 1/5] eal: add VXLAN-GPE macro Qiming Yang
2019-03-19 13:50         ` David Marchand
2019-03-19 16:34           ` Ferruh Yigit
2019-03-19 16:36       ` [PATCH v4 2/5] net/i40e: add support for VXLAN-GPE Qiming Yang
2019-03-19 16:36       ` [PATCH v4 3/5] net/i40e: support VXLAN-GPE classification Qiming Yang
2019-03-19 16:36       ` [PATCH v4 4/5] app/testpmd: add VXLAN-GPE to tunnel type Qiming Yang
2019-03-27 11:04         ` Iremonger, Bernard
2019-03-28 10:49           ` Iremonger, Bernard
2019-04-03  5:29           ` Yang, Qiming
2019-03-19 16:36       ` [PATCH v4 5/5] doc: add release note for VXLAN-GPE support Qiming Yang

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.