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

Michael Baum michaelba at nvidia.com
Tue Feb 6 15:26:58 CET 2024


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 at 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(-)

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. */
 };
 
 /**
-- 
2.25.1



More information about the dev mailing list