[dpdk-dev] [PATCH v5 00/11] mlx5 Rx tunnel offloading

Xueming Li xuemingl at mellanox.com
Fri Apr 20 14:23:29 CEST 2018


Important note:
        please note that this patchset relies on Adrien's patchset of flow API
        overhaul: http://www.dpdk.org/ml/archives/dev/2018-April/098047.html

v5:
- Removed %lx prints
- Per review request, clear mbuf tunnel type in case of multiple tunnel types.
- Rebase on Adriens flow API overhaul patchset
- Split feature requirement document into patches of L3 VXLAN and VXLAN-GPE
- Per review request, add device parameter to enable L3 VXLAN and VXLAN-GPE
v4:
- Fix RSS level according to value defination
- Add "Inner RSS" column to NIC feature doc
- Fixed flow creation error in case of ipv4 rss on ipv6 pattern
- new patch: enforce IP protocol of GRE to be 47.
- Removed MPLS-in-UDP and MPLS-in-GRE replated patchset
- Removed invalid RSS type check
v3:
- Refactor 16 Verbs priority detection.
- Other updates according to ML discussion.
v2:
- Split into 2 series: public api and mlx5, this one is the second.
- Rebased on Adrien's rte flow overhaul:
  http://www.dpdk.org/ml/archives/dev/2018-April/095774.html
v1:
- Support new tunnel type MPLS-in-GRE and MPLS-in-UDP
- Remove deprecation notes of rss level

This patchset supports MLX5 Rx tunnel checksum, inner rss, inner ptype offloading of following tunnel types:
- Standard VXLAN
- L3 VXLAN (no inner ethernet header)
- VXLAN-GPE

Xueming Li (11):
  net/mlx5: support 16 hardware priorities
  net/mlx5: support GRE tunnel flow
  net/mlx5: support L3 VXLAN flow
  net/mlx5: support Rx tunnel type identification
  net/mlx5: cleanup tunnel checksum offloads
  net/mlx5: split flow RSS handling logic
  net/mlx5: support tunnel RSS level
  net/mlx5: add hardware flow debug dump
  net/mlx5: introduce VXLAN-GPE tunnel type
  net/mlx5: allow flow tunnel ID 0 with outer pattern
  doc: update mlx5 guide on tunnel offloading

 doc/guides/nics/features/default.ini  |   1 +
 doc/guides/nics/features/mlx5.ini     |   3 +
 doc/guides/nics/mlx5.rst              |  30 +-
 drivers/net/mlx5/Makefile             |   2 +-
 drivers/net/mlx5/mlx5.c               |  24 +
 drivers/net/mlx5/mlx5.h               |   6 +
 drivers/net/mlx5/mlx5_flow.c          | 844 +++++++++++++++++++++++++++-------
 drivers/net/mlx5/mlx5_glue.c          |  16 +
 drivers/net/mlx5/mlx5_glue.h          |   8 +
 drivers/net/mlx5/mlx5_rxq.c           |  89 +++-
 drivers/net/mlx5/mlx5_rxtx.c          |  33 +-
 drivers/net/mlx5/mlx5_rxtx.h          |  11 +-
 drivers/net/mlx5/mlx5_rxtx_vec_neon.h |  21 +-
 drivers/net/mlx5/mlx5_rxtx_vec_sse.h  |  17 +-
 drivers/net/mlx5/mlx5_trigger.c       |   8 -
 drivers/net/mlx5/mlx5_utils.h         |   6 +
 16 files changed, 896 insertions(+), 223 deletions(-)

-- 
2.13.3



More information about the dev mailing list