[1/1] ethdev: add IPv6 FL and TC field identifiers

Message ID 20240206142658.1498907-2-michaelba@nvidia.com (mailing list archive)
State Superseded, archived
Delegated to: Ferruh Yigit
Headers
Series ethdev: add IPv6 field identifiers |

Checks

Context Check Description
ci/checkpatch success coding style OK
ci/loongarch-compilation warning apply patch failure
ci/Intel-compilation warning apply issues
ci/iol-testing warning apply patch failure

Commit Message

Michael Baum Feb. 6, 2024, 2:26 p.m. UTC
  Add new "rte_flow_field_id" enumeration values to describe both IPv6
traffic class and IPv6 flow label fields.

The TC value is "RTE_FLOW_FIELD_IPV6_TRAFFIC_CLASS" in flow API and
"ipv6_traffic_class" in testpmd command.
The FL value is "RTE_FLOW_FIELD_IPV6_FLOW_LABEL" in flow API and
"ipv6_flow_label" in testpmd command.

Signed-off-by: Michael Baum <michaelba@nvidia.com>
---
 app/test-pmd/cmdline_flow.c            | 1 +
 doc/guides/rel_notes/release_24_03.rst | 2 ++
 lib/ethdev/rte_flow.h                  | 4 +++-
 3 files changed, 6 insertions(+), 1 deletion(-)
  

Comments

Dariusz Sosnowski Feb. 7, 2024, 1:47 p.m. UTC | #1
> -----Original Message-----
> From: Michael Baum <michaelba@nvidia.com>
> Sent: Tuesday, February 6, 2024 15:27
> To: dev@dpdk.org
> Cc: Ori Kam <orika@nvidia.com>; Dariusz Sosnowski
> <dsosnowski@nvidia.com>; Ferruh Yigit <ferruh.yigit@amd.com>; NBU-
> Contact-Thomas Monjalon (EXTERNAL) <thomas@monjalon.net>
> Subject: [PATCH 1/1] ethdev: add IPv6 FL and TC field identifiers
> 
> Add new "rte_flow_field_id" enumeration values to describe both IPv6 traffic
> class and IPv6 flow label fields.
> 
> The TC value is "RTE_FLOW_FIELD_IPV6_TRAFFIC_CLASS" in flow API and
> "ipv6_traffic_class" in testpmd command.
> The FL value is "RTE_FLOW_FIELD_IPV6_FLOW_LABEL" in flow API and
> "ipv6_flow_label" in testpmd command.
> 
> Signed-off-by: Michael Baum <michaelba@nvidia.com>
Acked-by: Dariusz Sosnowski <dsosnowski@nvidia.com>

Best regards,
Dariusz Sosnowski
  

Patch

diff --git a/app/test-pmd/cmdline_flow.c b/app/test-pmd/cmdline_flow.c
index 9e1048f945..a6ae4c0d29 100644
--- a/app/test-pmd/cmdline_flow.c
+++ b/app/test-pmd/cmdline_flow.c
@@ -964,6 +964,7 @@  static const char *const modify_field_ids[] = {
 	"random",
 	"ipv4_proto",
 	"esp_spi", "esp_seq_num", "esp_proto",
+	"ipv6_flow_label", "ipv6_traffic_class",
 	NULL
 };
 
diff --git a/doc/guides/rel_notes/release_24_03.rst b/doc/guides/rel_notes/release_24_03.rst
index f08bf09e7f..10268b7879 100644
--- a/doc/guides/rel_notes/release_24_03.rst
+++ b/doc/guides/rel_notes/release_24_03.rst
@@ -68,6 +68,8 @@  New Features
   * Added ``RTE_FLOW_FIELD_ESP_SPI`` to represent it in field ID struct.
   * Added ``RTE_FLOW_FIELD_ESP_SEQ_NUM`` to represent it in field ID struct.
   * Added ``RTE_FLOW_FIELD_ESP_PROTO`` to represent it in field ID struct.
+  * Added ``RTE_FLOW_FIELD_IPV6_FLOW_LABEL`` to represent it in field ID struct.
+  * Added ``RTE_FLOW_FIELD_IPV6_TRAFFIC_CLASS`` to represent it in field ID struct.
 
 * ** Support for getting the number of used descriptors of a Tx queue. **
 
diff --git a/lib/ethdev/rte_flow.h b/lib/ethdev/rte_flow.h
index 6efba67f12..e66c247e7f 100644
--- a/lib/ethdev/rte_flow.h
+++ b/lib/ethdev/rte_flow.h
@@ -3937,7 +3937,9 @@  enum rte_flow_field_id {
 	RTE_FLOW_FIELD_IPV4_PROTO,	/**< IPv4 next protocol. */
 	RTE_FLOW_FIELD_ESP_SPI,		/**< ESP SPI. */
 	RTE_FLOW_FIELD_ESP_SEQ_NUM,	/**< ESP Sequence Number. */
-	RTE_FLOW_FIELD_ESP_PROTO	/**< ESP next protocol value. */
+	RTE_FLOW_FIELD_ESP_PROTO,	/**< ESP next protocol value. */
+	RTE_FLOW_FIELD_IPV6_FLOW_LABEL,	/**< IPv6 flow label. */
+	RTE_FLOW_FIELD_IPV6_TRAFFIC_CLASS/**< IPv6 traffic class. */
 };
 
 /**