summaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorDekel Peled <dekelp@mellanox.com>2018-10-21 17:22:47 +0300
committerFerruh Yigit <ferruh.yigit@intel.com>2018-10-26 22:14:05 +0200
commit839b20be0e9bbf5db119762c098ea865fafb9075 (patch)
tree9c339a72992fb1d3698d1ab000b484c784664308 /doc
parent23ea57a2a0cecbb904a5feeb0650db116585ee28 (diff)
downloaddpdk-839b20be0e9bbf5db119762c098ea865fafb9075.zip
dpdk-839b20be0e9bbf5db119762c098ea865fafb9075.tar.gz
dpdk-839b20be0e9bbf5db119762c098ea865fafb9075.tar.xz
ethdev: support metadata as flow rule criteria
As described in [1], a new rte_flow item is added to support metadata to use as flow rule match pattern. The metadata is an opaque item, fully controlled by the application. The use of metadata is relevant for egress rules only. It can be set in the flow rule using the RTE_FLOW_ITEM_META. An additional member 'tx_metadata' is added in union with existing member 'hash' of struct 'rte_mbuf', located to avoid conflicts with existing fields. This additional member is used to carry the metadata item. Application should set the packet metadata in the mbuf dedicated field, and set the PKT_TX_METADATA flag in the mbuf->ol_flags. The NIC will use the packet metadata as match criteria for relevant flow rules. This patch introduces metadata item type for rte_flow RTE_FLOW_ITEM_META, along with corresponding struct rte_flow_item_meta and ol_flag PKT_TX_METADATA. [1] "[RFC,v2] ethdev: support metadata as flow rule criteria" Signed-off-by: Dekel Peled <dekelp@mellanox.com> Acked-by: Andrew Rybchenko <arybchenko@solarflare.com>
Diffstat (limited to 'doc')
-rw-r--r--doc/guides/prog_guide/rte_flow.rst21
1 files changed, 21 insertions, 0 deletions
diff --git a/doc/guides/prog_guide/rte_flow.rst b/doc/guides/prog_guide/rte_flow.rst
index 0ebe85e..6fb0535 100644
--- a/doc/guides/prog_guide/rte_flow.rst
+++ b/doc/guides/prog_guide/rte_flow.rst
@@ -1191,6 +1191,27 @@ Normally preceded by any of:
- `Item: ICMP6_ND_NS`_
- `Item: ICMP6_ND_OPT`_
+Item: ``META``
+^^^^^^^^^^^^^^
+
+Matches an application specific 32 bit metadata item.
+
+- Default ``mask`` matches the specified metadata value.
+
+.. _table_rte_flow_item_meta:
+
+.. table:: META
+
+ +----------+----------+-----------------------+
+ | Field | Subfield | Value |
+ +==========+==========+=======================+
+ | ``spec`` | ``data`` | 32 bit metadata value |
+ +----------+----------------------------------+
+ | ``last`` | ``data`` | ignored |
+ +----------+----------+-----------------------+
+ | ``mask`` | ``data`` | ignored |
+ +----------+----------+-----------------------+
+
Actions
~~~~~~~