[v2] ethdev: add GTP PSC QFI field

Message ID 20220921143202.1790802-1-dsosnowski@nvidia.com (mailing list archive)
State Accepted, archived
Delegated to: Andrew Rybchenko
Headers
Series [v2] ethdev: add GTP PSC QFI field |

Checks

Context Check Description
ci/checkpatch success coding style OK
ci/iol-mellanox-Performance success Performance Testing PASS
ci/Intel-compilation fail Compilation issues
ci/iol-intel-Performance success Performance Testing PASS
ci/iol-intel-Functional success Functional Testing PASS
ci/iol-aarch64-unit-testing success Testing PASS
ci/iol-x86_64-compile-testing success Testing PASS
ci/github-robot: build success github build: passed
ci/iol-x86_64-unit-testing success Testing PASS
ci/iol-aarch64-compile-testing success Testing PASS
ci/intel-Testing success Testing PASS

Commit Message

Dariusz Sosnowski Sept. 21, 2022, 2:32 p.m. UTC
  This patch introduces the GTP PSC QFI modify field support and adds
the testpmd CLI command support.

An example for copying GTP QFI field using modify_field action:

	modify_field op set
	             dst_type meta
	             src_type gtp_psc_qfi
	             width 8

An example of setting GTP QFI field value to 0x1f using modify_field
action:

	modify_field op set
	             dst_type gtp_psc_qfi
	             src_type value src_value 1f
	             width 8

Signed-off-by: Dariusz Sosnowski <dsosnowski@nvidia.com>
Acked-by: Ori Kam <orika@nvidia.com>
---

v2:

* Squashed ethdev and testpmd commits.

 app/test-pmd/cmdline_flow.c | 2 +-
 lib/ethdev/rte_flow.h       | 1 +
 2 files changed, 2 insertions(+), 1 deletion(-)
  

Comments

Andrew Rybchenko Sept. 26, 2022, 2:57 p.m. UTC | #1
On 9/21/22 17:32, Dariusz Sosnowski wrote:
> This patch introduces the GTP PSC QFI modify field support and adds
> the testpmd CLI command support.
> 
> An example for copying GTP QFI field using modify_field action:
> 
> 	modify_field op set
> 	             dst_type meta
> 	             src_type gtp_psc_qfi
> 	             width 8
> 
> An example of setting GTP QFI field value to 0x1f using modify_field
> action:
> 
> 	modify_field op set
> 	             dst_type gtp_psc_qfi
> 	             src_type value src_value 1f
> 	             width 8
> 
> Signed-off-by: Dariusz Sosnowski <dsosnowski@nvidia.com>
> Acked-by: Ori Kam <orika@nvidia.com>
> ---
> 
> v2:
> 
> * Squashed ethdev and testpmd commits.
> 
>   app/test-pmd/cmdline_flow.c | 2 +-
>   lib/ethdev/rte_flow.h       | 1 +
>   2 files changed, 2 insertions(+), 1 deletion(-)
> 

Applied to dpdk-next-net/main, thanks.
  

Patch

diff --git a/app/test-pmd/cmdline_flow.c b/app/test-pmd/cmdline_flow.c
index 7f50028eb7..b9673314b1 100644
--- a/app/test-pmd/cmdline_flow.c
+++ b/app/test-pmd/cmdline_flow.c
@@ -796,7 +796,7 @@  static const char *const modify_field_ids[] = {
 	"udp_port_src", "udp_port_dst",
 	"vxlan_vni", "geneve_vni", "gtp_teid",
 	"tag", "mark", "meta", "pointer", "value",
-	"ipv4_ecn", "ipv6_ecn", NULL
+	"ipv4_ecn", "ipv6_ecn", "gtp_psc_qfi", NULL
 };
 
 /** Maximum number of subsequent tokens and arguments on the stack. */
diff --git a/lib/ethdev/rte_flow.h b/lib/ethdev/rte_flow.h
index a79f1e7ef0..e64831f8f1 100644
--- a/lib/ethdev/rte_flow.h
+++ b/lib/ethdev/rte_flow.h
@@ -3689,6 +3689,7 @@  enum rte_flow_field_id {
 	RTE_FLOW_FIELD_VALUE,		/**< Immediate value. */
 	RTE_FLOW_FIELD_IPV4_ECN,	/**< IPv4 ECN. */
 	RTE_FLOW_FIELD_IPV6_ECN,	/**< IPv6 ECN. */
+	RTE_FLOW_FIELD_GTP_PSC_QFI,	/**< GTP QFI. */
 };
 
 /**