[dpdk-dev] [PATCH 0/8] ethdev: introduce GENEVE header TLV option item

Shiri Kuzin shirik at nvidia.com
Sun Dec 27 17:06:15 CET 2020


The Geneve tunneling protocol is designed to allow the
user to specify some data context on the packet.
The GENEVE TLV (Type-Length-Variable) Option
is the mean intended to present the user data.

In order to support GENEVE TLV Option the new rte_flow
item "rte_flow_item_geneve_opt" is introduced.
The new item contains the values and masks for the
following fields:
-option class
-option type
-length
-data

The usage example:
"flow create 0 ingress pattern eth / ipv4 / udp / geneve vni is 100 /
geneve-opt class is 5 length is 1 type is 0 data is 0x66998800 /
end actions count / drop / end"


New item will be added to testpmd to support
raw encap/decap action.

Shiri Kuzin (7):
  lib/librte_ethdev: introduce GENEVE header TLV option item
  common/mlx5: check GENEVE TLV support in HCA attributes
  common/mlx5: create GENEVE TLV option object with DevX
  net/mlx5: create GENEVE TLV option management
  net/mlx5: add GENEVE TLV option flow validation
  net/mlx5: add GENEVE TLV option flow translation
  doc: update GENEVE TLV option support

Viacheslav Ovsiienko (1):
  app/testpmd: add GENEVE option item support

 app/test-pmd/cmdline_flow.c                 | 102 ++++++++++++++-
 doc/guides/nics/mlx5.rst                    |  18 ++-
 doc/guides/testpmd_app_ug/testpmd_funcs.rst |   8 ++
 drivers/common/mlx5/mlx5_devx_cmds.c        |  61 +++++++++
 drivers/common/mlx5/mlx5_devx_cmds.h        |   9 ++
 drivers/common/mlx5/mlx5_prm.h              |  28 ++++-
 drivers/common/mlx5/version.map             |   1 +
 drivers/net/mlx5/mlx5.c                     |   2 +
 drivers/net/mlx5/mlx5.h                     |  13 ++
 drivers/net/mlx5/mlx5_flow.c                | 120 ++++++++++++++++++
 drivers/net/mlx5/mlx5_flow.h                |  11 ++
 drivers/net/mlx5/mlx5_flow_dv.c             | 188 +++++++++++++++++++++++++++-
 lib/librte_ethdev/rte_flow.c                |   1 +
 lib/librte_ethdev/rte_flow.h                |  33 +++++
 14 files changed, 584 insertions(+), 11 deletions(-)

-- 
1.8.3.1



More information about the dev mailing list