[dpdk-dev,01/18] ethdev: support tunnel RSS level

Message ID 20180226150947.107179-2-xuemingl@mellanox.com (mailing list archive)
State Superseded, archived
Headers

Checks

Context Check Description
ci/checkpatch success coding style OK
ci/Intel-compilation success Compilation OK

Commit Message

Xueming Li Feb. 26, 2018, 3:09 p.m. UTC
  Currently PMD implementations default RSS on either tunnel outer or
inner fields. This patch introduced RSS level to allow user to specify
RSS hash field level of tunneled packets.

0: outer RSS.
1: inner RSS.
2-255: deep RSS level.

Please note that tunnels that tightly nested without IP/UDP/TCP layer
interlaced are deemed as one level. For example the following packet can
only use level 0 or 1:
	eth / ipv4 / GRE / MPLS / ipv4 / udp

Signed-off-by: Xueming Li <xuemingl@mellanox.com>
---
 lib/librte_ether/rte_ethdev.h | 9 +++++++++
 1 file changed, 9 insertions(+)
  

Comments

Ferruh Yigit Feb. 27, 2018, 1:09 p.m. UTC | #1
On 2/26/2018 3:09 PM, Xueming Li wrote:
> Currently PMD implementations default RSS on either tunnel outer or
> inner fields. This patch introduced RSS level to allow user to specify
> RSS hash field level of tunneled packets.
> 
> 0: outer RSS.
> 1: inner RSS.
> 2-255: deep RSS level.
> 
> Please note that tunnels that tightly nested without IP/UDP/TCP layer
> interlaced are deemed as one level. For example the following packet can
> only use level 0 or 1:
> 	eth / ipv4 / GRE / MPLS / ipv4 / udp
> 
> Signed-off-by: Xueming Li <xuemingl@mellanox.com>
> ---
>  lib/librte_ether/rte_ethdev.h | 9 +++++++++

Please remove the related deprecation notice in this patch.
  
Xueming Li March 9, 2018, 11:29 a.m. UTC | #2
v1:
- Support new tunnel type MPLS-in-GRE and MPLS-in-UDP
- Remove deprecation notes of rss level

This patchset supports MLX5 RX offloading(checksum, inner rss, inner ptype) for VXLAN(starndard L2/nonstandard L3), GRE and VXLAN-GPE based on rte flow.

V0 patchset was based on follwoing patchset:
http://www.dpdk.org/dev/patchwork/patch/35005/
http://www.dpdk.org/dev/patchwork/patch/31757/

Next version will be based on Adrien's new flow action api:
http://www.dpdk.org/dev/patchwork/patch/35178/

Shahaf Shuler (1):
  net/mlx5: fix tunnel offloads cap query

Xueming Li (20):
  ethdev: support tunnel RSS level
  app/testpmd: support flow RSS level parsing
  ethdev: introduce new tunnel VXLAN-GPE
  app/testpmd: introduce new tunnel VXLAN-GPE
  app/testpmd: add more GRE extension support to csum engine
  net/mlx5: support GRE tunnel flow
  net/mlx5: support L3 vxlan
  net/mlx5: support tunnel inner csum offloads
  net/mlx5: support packet tunnel type
  net/mlx5: split flow RSS handling logic
  net/mlx5: support tunnel RSS level
  net/mlx5: support 16 hardware priorities
  net/mlx5: add hardware flow debug dump
  net/mlx5: fix control flow create failure
  net/mlx5: introduce new tunnel VXLAN-GPE
  net/mlx5: allow flow tunnel ID 0 with outer pattern
  doc: update mlx5 guide on tunnel offloading
  doc: remove announce of ethdev API change for RSS configuration
  ethdev: introduce tunnel type MPLS-in-GRE and MPLS-in-UDP
  net/mlx5: support MPLS-in-GRE and MPLS-in-UDP flow pattern

 app/test-pmd/cmdline_flow.c           |  51 ++-
 app/test-pmd/config.c                 |   2 +
 app/test-pmd/csumonly.c               | 103 ++++-
 app/test-pmd/parameters.c             |  12 +-
 app/test-pmd/testpmd.h                |   2 +
 doc/guides/nics/mlx5.rst              |   4 +-
 doc/guides/rel_notes/deprecation.rst  |   4 -
 doc/guides/testpmd_app_ug/run_app.rst |   5 +
 drivers/net/mlx5/Makefile             |   6 +-
 drivers/net/mlx5/mlx5.c               |  39 +-
 drivers/net/mlx5/mlx5.h               |   4 +-
 drivers/net/mlx5/mlx5_flow.c          | 696 ++++++++++++++++++++++++++++------
 drivers/net/mlx5/mlx5_rxq.c           |  61 ++-
 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 +-
 lib/librte_ether/rte_eth_ctrl.h       |   3 +-
 lib/librte_ether/rte_ethdev.h         |   9 +
 lib/librte_ether/rte_flow.c           |   1 +
 lib/librte_ether/rte_flow.h           |  27 ++
 lib/librte_mbuf/rte_mbuf.c            |   3 +
 lib/librte_mbuf/rte_mbuf.h            |   1 +
 lib/librte_mbuf/rte_mbuf_ptype.c      |   3 +
 lib/librte_mbuf/rte_mbuf_ptype.h      |  47 +++
 lib/librte_net/rte_ether.h            |  25 ++
 26 files changed, 986 insertions(+), 204 deletions(-)
  
Xueming Li April 10, 2018, 1 p.m. UTC | #3
v2:
- Split patch set into public and mlx5 two series, this one is the first.
v1:
- Support new tunnel type MPLS-in-GRE and MPLS-in-UDP
- Remove deprecation notes of rss level

This patchset introduced new tunnel type and related testpmd code:
- New tunnel type VXLAN-GPE
  https://datatracker.ietf.org/doc/draft-ietf-nvo3-vxlan-gpe/
- New tunnel type MPLS-in-GRE
  https://tools.ietf.org/html/rfc4023
- New tunnel type MPLS-in-UDP
  https://tools.ietf.org/html/rfc7510
- Support GRE extension in testpmd csum forwarding engine


Xueming Li (5):
  doc: remove RSS configuration change announcement
  ethdev: introduce new tunnel VXLAN-GPE
  ethdev: introduce tunnel type MPLS-in-GRE and MPLS-in-UDP
  app/testpmd: introduce new tunnel VXLAN-GPE
  app/testpmd: add more GRE extension support to csum engine

 app/test-pmd/cmdline_flow.c           |  24 ++++++++
 app/test-pmd/config.c                 |   2 +
 app/test-pmd/csumonly.c               | 103 ++++++++++++++++++++++++++++++----
 app/test-pmd/parameters.c             |  12 +++-
 app/test-pmd/testpmd.h                |   2 +
 doc/guides/rel_notes/deprecation.rst  |   4 --
 doc/guides/testpmd_app_ug/run_app.rst |   5 ++
 lib/librte_ether/rte_eth_ctrl.h       |   3 +-
 lib/librte_ether/rte_flow.c           |   1 +
 lib/librte_ether/rte_flow.h           |  27 +++++++++
 lib/librte_mbuf/rte_mbuf.c            |   3 +
 lib/librte_mbuf/rte_mbuf.h            |   1 +
 lib/librte_mbuf/rte_mbuf_ptype.c      |   3 +
 lib/librte_mbuf/rte_mbuf_ptype.h      |  47 ++++++++++++++++
 lib/librte_net/rte_ether.h            |  25 +++++++++
 15 files changed, 245 insertions(+), 17 deletions(-)
  
Xueming Li April 12, 2018, 7:33 a.m. UTC | #4
v3:
- Change VXLAN-GPE definition order to avoid ABI compatibility issue.
v2:
- Split patch set into public and mlx5 two series, this one is the first.
v1:
- Support new tunnel type MPLS-in-GRE and MPLS-in-UDP
- Remove deprecation notes of rss level

This patchset introduced new tunnel type and related testpmd code:
- New tunnel type VXLAN-GPE
  https://datatracker.ietf.org/doc/draft-ietf-nvo3-vxlan-gpe/
- New tunnel type MPLS-in-GRE
  https://tools.ietf.org/html/rfc4023
- New tunnel type MPLS-in-UDP
  https://tools.ietf.org/html/rfc7510
- Support GRE extension in testpmd csum forwarding engine


Xueming Li (5):
  doc: remove RSS configuration change announcement
  ethdev: introduce new tunnel VXLAN-GPE
  ethdev: introduce tunnel type MPLS-in-GRE and MPLS-in-UDP
  app/testpmd: introduce new tunnel VXLAN-GPE
  app/testpmd: add more GRE extension support to csum engine

 app/test-pmd/cmdline_flow.c           |  24 ++++++++
 app/test-pmd/config.c                 |   2 +
 app/test-pmd/csumonly.c               | 103 ++++++++++++++++++++++++++++++----
 app/test-pmd/parameters.c             |  12 +++-
 app/test-pmd/testpmd.h                |   2 +
 doc/guides/prog_guide/rte_flow.rst    |  12 ++++
 doc/guides/rel_notes/deprecation.rst  |   4 --
 doc/guides/testpmd_app_ug/run_app.rst |   5 ++
 lib/librte_ether/rte_eth_ctrl.h       |   3 +-
 lib/librte_ether/rte_flow.c           |   1 +
 lib/librte_ether/rte_flow.h           |  27 +++++++++
 lib/librte_mbuf/rte_mbuf.c            |   3 +
 lib/librte_mbuf/rte_mbuf.h            |   1 +
 lib/librte_mbuf/rte_mbuf_ptype.c      |   3 +
 lib/librte_mbuf/rte_mbuf_ptype.h      |  47 ++++++++++++++++
 lib/librte_net/rte_ether.h            |  25 +++++++++
 16 files changed, 257 insertions(+), 17 deletions(-)
  
Xueming Li April 13, 2018, 11:02 a.m. UTC | #5
v4:
- Update testpmd doc for flow VXLAN-GPE paramter.
v3:
- Change VXLAN-GPE definition order to avoid ABI compatibility issue.
v2:
- Split patch set into public and mlx5 two series, this one is the first.
v1:
- Support new tunnel type MPLS-in-GRE and MPLS-in-UDP
- Remove deprecation notes of rss level

This patchset introduced new tunnel type and related testpmd code:
- New tunnel type VXLAN-GPE
  https://datatracker.ietf.org/doc/draft-ietf-nvo3-vxlan-gpe/
- New tunnel type MPLS-in-GRE
  https://tools.ietf.org/html/rfc4023
- New tunnel type MPLS-in-UDP
  https://tools.ietf.org/html/rfc7510
- Support GRE extension in testpmd csum forwarding engine

Xueming Li (5):
  doc: remove RSS configuration change announcement
  ethdev: introduce new tunnel VXLAN-GPE
  ethdev: introduce tunnel type MPLS-in-GRE and MPLS-in-UDP
  app/testpmd: introduce new tunnel VXLAN-GPE
  app/testpmd: add more GRE extension support to csum engine

 app/test-pmd/cmdline_flow.c                 |  24 +++++++
 app/test-pmd/config.c                       |   2 +
 app/test-pmd/csumonly.c                     | 103 +++++++++++++++++++++++++---
 app/test-pmd/parameters.c                   |  12 +++-
 app/test-pmd/testpmd.h                      |   2 +
 doc/guides/prog_guide/rte_flow.rst          |  12 ++++
 doc/guides/rel_notes/deprecation.rst        |   4 --
 doc/guides/testpmd_app_ug/run_app.rst       |   5 ++
 doc/guides/testpmd_app_ug/testpmd_funcs.rst |   4 ++
 lib/librte_ether/rte_eth_ctrl.h             |   3 +-
 lib/librte_ether/rte_flow.c                 |   1 +
 lib/librte_ether/rte_flow.h                 |  27 ++++++++
 lib/librte_mbuf/rte_mbuf.c                  |   3 +
 lib/librte_mbuf/rte_mbuf.h                  |   1 +
 lib/librte_mbuf/rte_mbuf_ptype.c            |   3 +
 lib/librte_mbuf/rte_mbuf_ptype.h            |  47 +++++++++++++
 lib/librte_net/rte_ether.h                  |  25 +++++++
 17 files changed, 261 insertions(+), 17 deletions(-)
  
Thomas Monjalon April 16, 2018, 10:33 p.m. UTC | #6
13/04/2018 13:02, Xueming Li:
> Xueming Li (5):
>   doc: remove RSS configuration change announcement
>   ethdev: introduce new tunnel VXLAN-GPE
>   ethdev: introduce tunnel type MPLS-in-GRE and MPLS-in-UDP
>   app/testpmd: introduce new tunnel VXLAN-GPE
>   app/testpmd: add more GRE extension support to csum engine

I would personnaly prefer that the comments of the structures fields
in patch 2 (VXLAN-GPE) are aligned with few spaces.
Except this nit,

Acked-by: Thomas Monjalon <thomas@monjalon.net>
  
Xueming Li April 17, 2018, 3:04 p.m. UTC | #7
v5:
- Fixed VXLAN-GPE comment alignment
v4:
- Update testpmd doc for flow VXLAN-GPE paramter.
v3:
- Change VXLAN-GPE definition order to avoid ABI compatibility issue.
v2:
- Split patch set into public and mlx5 two series, this one is the first.
v1:
- Support new tunnel type MPLS-in-GRE and MPLS-in-UDP
- Remove deprecation notes of rss level

This patchset introduced new tunnel type and related testpmd code:
- New tunnel type VXLAN-GPE
  https://datatracker.ietf.org/doc/draft-ietf-nvo3-vxlan-gpe/
- New tunnel type MPLS-in-GRE
  https://tools.ietf.org/html/rfc4023
- New tunnel type MPLS-in-UDP
  https://tools.ietf.org/html/rfc7510
- Support GRE extension in testpmd csum forwarding engine

Xueming Li (4):
  doc: remove RSS configuration change announcement
  ethdev: introduce new tunnel VXLAN-GPE
  app/testpmd: introduce new tunnel VXLAN-GPE
  app/testpmd: add more GRE extension support to csum engine

 app/test-pmd/cmdline_flow.c                 |  24 +++++++
 app/test-pmd/config.c                       |   2 +
 app/test-pmd/csumonly.c                     | 103 +++++++++++++++++++++++++---
 app/test-pmd/parameters.c                   |  12 +++-
 app/test-pmd/testpmd.h                      |   2 +
 doc/guides/prog_guide/rte_flow.rst          |  12 ++++
 doc/guides/rel_notes/deprecation.rst        |   4 --
 doc/guides/testpmd_app_ug/run_app.rst       |   5 ++
 doc/guides/testpmd_app_ug/testpmd_funcs.rst |   4 ++
 lib/librte_ether/rte_eth_ctrl.h             |   3 +-
 lib/librte_ether/rte_flow.c                 |   1 +
 lib/librte_ether/rte_flow.h                 |  27 ++++++++
 lib/librte_mbuf/rte_mbuf.c                  |   3 +
 lib/librte_mbuf/rte_mbuf.h                  |   1 +
 lib/librte_mbuf/rte_mbuf_ptype.c            |   1 +
 lib/librte_mbuf/rte_mbuf_ptype.h            |  13 ++++
 lib/librte_net/rte_ether.h                  |  25 +++++++
 17 files changed, 225 insertions(+), 17 deletions(-)
  
Iremonger, Bernard April 17, 2018, 4:05 p.m. UTC | #8
Hi Li,

> -----Original Message-----
> From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Xueming Li
> Sent: Tuesday, April 17, 2018 4:04 PM
> To: Lu, Wenzhuo <wenzhuo.lu@intel.com>; Wu, Jingjing
> <jingjing.wu@intel.com>; Thomas Monjalon <thomas@monjalon.net>; Adrien
> Mazarguil <adrien.mazarguil@6wind.com>
> Cc: Xueming Li <xuemingl@mellanox.com>; Nelio Laranjeiro
> <nelio.laranjeiro@6wind.com>; Shahaf Shuler <shahafs@mellanox.com>;
> dev@dpdk.org; Olivier Matz <olivier.matz@6wind.com>
> Subject: [dpdk-dev] [PATCH v5 0/4] introduce new tunnel types
> 
> v5:
> - Fixed VXLAN-GPE comment alignment
> v4:
> - Update testpmd doc for flow VXLAN-GPE paramter.
> v3:
> - Change VXLAN-GPE definition order to avoid ABI compatibility issue.
> v2:
> - Split patch set into public and mlx5 two series, this one is the first.
> v1:
> - Support new tunnel type MPLS-in-GRE and MPLS-in-UDP
> - Remove deprecation notes of rss level
> 
> This patchset introduced new tunnel type and related testpmd code:
> - New tunnel type VXLAN-GPE
>   https://datatracker.ietf.org/doc/draft-ietf-nvo3-vxlan-gpe/
> - New tunnel type MPLS-in-GRE
>   https://tools.ietf.org/html/rfc4023
> - New tunnel type MPLS-in-UDP
>   https://tools.ietf.org/html/rfc7510
> - Support GRE extension in testpmd csum forwarding engine
> 
> Xueming Li (4):
>   doc: remove RSS configuration change announcement
>   ethdev: introduce new tunnel VXLAN-GPE
>   app/testpmd: introduce new tunnel VXLAN-GPE
>   app/testpmd: add more GRE extension support to csum engine
> 
>  app/test-pmd/cmdline_flow.c                 |  24 +++++++
>  app/test-pmd/config.c                       |   2 +
>  app/test-pmd/csumonly.c                     | 103 +++++++++++++++++++++++++---
>  app/test-pmd/parameters.c                   |  12 +++-
>  app/test-pmd/testpmd.h                      |   2 +
>  doc/guides/prog_guide/rte_flow.rst          |  12 ++++
>  doc/guides/rel_notes/deprecation.rst        |   4 --
>  doc/guides/testpmd_app_ug/run_app.rst       |   5 ++
>  doc/guides/testpmd_app_ug/testpmd_funcs.rst |   4 ++
>  lib/librte_ether/rte_eth_ctrl.h             |   3 +-
>  lib/librte_ether/rte_flow.c                 |   1 +
>  lib/librte_ether/rte_flow.h                 |  27 ++++++++
>  lib/librte_mbuf/rte_mbuf.c                  |   3 +
>  lib/librte_mbuf/rte_mbuf.h                  |   1 +
>  lib/librte_mbuf/rte_mbuf_ptype.c            |   1 +
>  lib/librte_mbuf/rte_mbuf_ptype.h            |  13 ++++
>  lib/librte_net/rte_ether.h                  |  25 +++++++
>  17 files changed, 225 insertions(+), 17 deletions(-)
> 
> --
> 2.13.3

Patch 3 of this patch set fails to apply to the latest master, the other three patches apply ok.

Regards,

Bernard.
  
Xueming Li April 18, 2018, 11:55 a.m. UTC | #9
> -----Original Message-----

> From: Iremonger, Bernard <bernard.iremonger@intel.com>

> Sent: Wednesday, April 18, 2018 12:05 AM

> To: Xueming(Steven) Li <xuemingl@mellanox.com>; Lu, Wenzhuo <wenzhuo.lu@intel.com>; Wu, Jingjing

> <jingjing.wu@intel.com>; Thomas Monjalon <thomas@monjalon.net>; Adrien Mazarguil

> <adrien.mazarguil@6wind.com>

> Cc: Nélio Laranjeiro <nelio.laranjeiro@6wind.com>; Shahaf Shuler <shahafs@mellanox.com>; dev@dpdk.org;

> Olivier Matz <olivier.matz@6wind.com>

> Subject: RE: [dpdk-dev] [PATCH v5 0/4] introduce new tunnel types

> 

> Hi Li,

> 

> > -----Original Message-----

> > From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Xueming Li

> > Sent: Tuesday, April 17, 2018 4:04 PM

> > To: Lu, Wenzhuo <wenzhuo.lu@intel.com>; Wu, Jingjing

> > <jingjing.wu@intel.com>; Thomas Monjalon <thomas@monjalon.net>; Adrien

> > Mazarguil <adrien.mazarguil@6wind.com>

> > Cc: Xueming Li <xuemingl@mellanox.com>; Nelio Laranjeiro

> > <nelio.laranjeiro@6wind.com>; Shahaf Shuler <shahafs@mellanox.com>;

> > dev@dpdk.org; Olivier Matz <olivier.matz@6wind.com>

> > Subject: [dpdk-dev] [PATCH v5 0/4] introduce new tunnel types

> >

> > v5:

> > - Fixed VXLAN-GPE comment alignment

> > v4:

> > - Update testpmd doc for flow VXLAN-GPE paramter.

> > v3:

> > - Change VXLAN-GPE definition order to avoid ABI compatibility issue.

> > v2:

> > - Split patch set into public and mlx5 two series, this one is the first.

> > v1:

> > - Support new tunnel type MPLS-in-GRE and MPLS-in-UDP

> > - Remove deprecation notes of rss level

> >

> > This patchset introduced new tunnel type and related testpmd code:

> > - New tunnel type VXLAN-GPE

> >

> > https://emea01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fdat

> > atracker.ietf.org%2Fdoc%2Fdraft-ietf-nvo3-vxlan-gpe%2F&data=02%7C01%7C

> > xuemingl%40mellanox.com%7C2dffef40890b4cf8ff9d08d5a47d0420%7Ca652971c7

> > d2e4d9ba6a4d149256f461b%7C0%7C0%7C636595779231620631&sdata=%2Bvx%2FgVB

> > 3e3BHI%2BYxPxOIpqK6CuKvQQ8qej4B1Faxihc%3D&reserved=0

> > - New tunnel type MPLS-in-GRE

> >

> > https://emea01.safelinks.protection.outlook.com/?url=https%3A%2F%2Ftoo

> > ls.ietf.org%2Fhtml%2Frfc4023&data=02%7C01%7Cxuemingl%40mellanox.com%7C

> > 2dffef40890b4cf8ff9d08d5a47d0420%7Ca652971c7d2e4d9ba6a4d149256f461b%7C

> > 0%7C0%7C636595779231620631&sdata=wk2wvoB9LSbI2LfHZVvWzmtgS0XQbGNMFL4G1

> > kyr77E%3D&reserved=0

> > - New tunnel type MPLS-in-UDP

> >

> > https://emea01.safelinks.protection.outlook.com/?url=https%3A%2F%2Ftoo

> > ls.ietf.org%2Fhtml%2Frfc7510&data=02%7C01%7Cxuemingl%40mellanox.com%7C

> > 2dffef40890b4cf8ff9d08d5a47d0420%7Ca652971c7d2e4d9ba6a4d149256f461b%7C

> > 0%7C0%7C636595779231620631&sdata=4RXbPD9tV7ArcnKsK8IJy%2B9XbKlzKcNBSv1

> > LXVwwuPs%3D&reserved=0

> > - Support GRE extension in testpmd csum forwarding engine

> >

> > Xueming Li (4):

> >   doc: remove RSS configuration change announcement

> >   ethdev: introduce new tunnel VXLAN-GPE

> >   app/testpmd: introduce new tunnel VXLAN-GPE

> >   app/testpmd: add more GRE extension support to csum engine

> >

> >  app/test-pmd/cmdline_flow.c                 |  24 +++++++

> >  app/test-pmd/config.c                       |   2 +

> >  app/test-pmd/csumonly.c                     | 103 +++++++++++++++++++++++++---

> >  app/test-pmd/parameters.c                   |  12 +++-

> >  app/test-pmd/testpmd.h                      |   2 +

> >  doc/guides/prog_guide/rte_flow.rst          |  12 ++++

> >  doc/guides/rel_notes/deprecation.rst        |   4 --

> >  doc/guides/testpmd_app_ug/run_app.rst       |   5 ++

> >  doc/guides/testpmd_app_ug/testpmd_funcs.rst |   4 ++

> >  lib/librte_ether/rte_eth_ctrl.h             |   3 +-

> >  lib/librte_ether/rte_flow.c                 |   1 +

> >  lib/librte_ether/rte_flow.h                 |  27 ++++++++

> >  lib/librte_mbuf/rte_mbuf.c                  |   3 +

> >  lib/librte_mbuf/rte_mbuf.h                  |   1 +

> >  lib/librte_mbuf/rte_mbuf_ptype.c            |   1 +

> >  lib/librte_mbuf/rte_mbuf_ptype.h            |  13 ++++

> >  lib/librte_net/rte_ether.h                  |  25 +++++++

> >  17 files changed, 225 insertions(+), 17 deletions(-)

> >

> > --

> > 2.13.3

> 

> Patch 3 of this patch set fails to apply to the latest master, the other three patches apply ok.

> 

> Regards,

> 

> Bernard.

> 

I tried it with orgin/master branch and it worked for me.
Could you please share more information?

Best Regards,
Xueming Li
  
Iremonger, Bernard April 18, 2018, 3:11 p.m. UTC | #10
Hi Li

<snip>

> > > -----Original Message-----

> > > From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Xueming Li

> > > Sent: Tuesday, April 17, 2018 4:04 PM

> > > To: Lu, Wenzhuo <wenzhuo.lu@intel.com>; Wu, Jingjing

> > > <jingjing.wu@intel.com>; Thomas Monjalon <thomas@monjalon.net>;

> > > Adrien Mazarguil <adrien.mazarguil@6wind.com>

> > > Cc: Xueming Li <xuemingl@mellanox.com>; Nelio Laranjeiro

> > > <nelio.laranjeiro@6wind.com>; Shahaf Shuler <shahafs@mellanox.com>;

> > > dev@dpdk.org; Olivier Matz <olivier.matz@6wind.com>

> > > Subject: [dpdk-dev] [PATCH v5 0/4] introduce new tunnel types

> > >

> > > v5:

> > > - Fixed VXLAN-GPE comment alignment

> > > v4:

> > > - Update testpmd doc for flow VXLAN-GPE paramter.

> > > v3:

> > > - Change VXLAN-GPE definition order to avoid ABI compatibility issue.

> > > v2:

> > > - Split patch set into public and mlx5 two series, this one is the first.

> > > v1:

> > > - Support new tunnel type MPLS-in-GRE and MPLS-in-UDP

> > > - Remove deprecation notes of rss level

> > >

> > > This patchset introduced new tunnel type and related testpmd code:

> > > - New tunnel type VXLAN-GPE

> > >

> > > https://emea01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fd

> > > at

> > > atracker.ietf.org%2Fdoc%2Fdraft-ietf-nvo3-vxlan-gpe%2F&data=02%7C01%

> > > 7C

> > >

> xuemingl%40mellanox.com%7C2dffef40890b4cf8ff9d08d5a47d0420%7Ca65297

> 1

> > > c7

> > >

> d2e4d9ba6a4d149256f461b%7C0%7C0%7C636595779231620631&sdata=%2Bv

> x%2Fg

> > > VB

> > > 3e3BHI%2BYxPxOIpqK6CuKvQQ8qej4B1Faxihc%3D&reserved=0

> > > - New tunnel type MPLS-in-GRE

> > >

> > > https://emea01.safelinks.protection.outlook.com/?url=https%3A%2F%2Ft

> > > oo

> > >

> ls.ietf.org%2Fhtml%2Frfc4023&data=02%7C01%7Cxuemingl%40mellanox.com%

> > > 7C

> > >

> 2dffef40890b4cf8ff9d08d5a47d0420%7Ca652971c7d2e4d9ba6a4d149256f461b

> %

> > > 7C

> > >

> 0%7C0%7C636595779231620631&sdata=wk2wvoB9LSbI2LfHZVvWzmtgS0XQbG

> NMFL4

> > > G1

> > > kyr77E%3D&reserved=0

> > > - New tunnel type MPLS-in-UDP

> > >

> > > https://emea01.safelinks.protection.outlook.com/?url=https%3A%2F%2Ft

> > > oo

> > >

> ls.ietf.org%2Fhtml%2Frfc7510&data=02%7C01%7Cxuemingl%40mellanox.com%

> > > 7C

> > >

> 2dffef40890b4cf8ff9d08d5a47d0420%7Ca652971c7d2e4d9ba6a4d149256f461b

> %

> > > 7C

> > >

> 0%7C0%7C636595779231620631&sdata=4RXbPD9tV7ArcnKsK8IJy%2B9XbKlzKc

> NBS

> > > v1

> > > LXVwwuPs%3D&reserved=0

> > > - Support GRE extension in testpmd csum forwarding engine

> > >

> > > Xueming Li (4):

> > >   doc: remove RSS configuration change announcement

> > >   ethdev: introduce new tunnel VXLAN-GPE

> > >   app/testpmd: introduce new tunnel VXLAN-GPE

> > >   app/testpmd: add more GRE extension support to csum engine

> > >

> > >  app/test-pmd/cmdline_flow.c                 |  24 +++++++

> > >  app/test-pmd/config.c                       |   2 +

> > >  app/test-pmd/csumonly.c                     | 103 +++++++++++++++++++++++++--

> -

> > >  app/test-pmd/parameters.c                   |  12 +++-

> > >  app/test-pmd/testpmd.h                      |   2 +

> > >  doc/guides/prog_guide/rte_flow.rst          |  12 ++++

> > >  doc/guides/rel_notes/deprecation.rst        |   4 --

> > >  doc/guides/testpmd_app_ug/run_app.rst       |   5 ++

> > >  doc/guides/testpmd_app_ug/testpmd_funcs.rst |   4 ++

> > >  lib/librte_ether/rte_eth_ctrl.h             |   3 +-

> > >  lib/librte_ether/rte_flow.c                 |   1 +

> > >  lib/librte_ether/rte_flow.h                 |  27 ++++++++

> > >  lib/librte_mbuf/rte_mbuf.c                  |   3 +

> > >  lib/librte_mbuf/rte_mbuf.h                  |   1 +

> > >  lib/librte_mbuf/rte_mbuf_ptype.c            |   1 +

> > >  lib/librte_mbuf/rte_mbuf_ptype.h            |  13 ++++

> > >  lib/librte_net/rte_ether.h                  |  25 +++++++

> > >  17 files changed, 225 insertions(+), 17 deletions(-)

> > >

> > > --

> > > 2.13.3

> >

> > Patch 3 of this patch set fails to apply to the latest master, the other three

> patches apply ok.

> >

> > Regards,

> >

> > Bernard.

> >

> I tried it with orgin/master branch and it worked for me.

> Could you please share more information?

> 

> Best Regards,

> Xueming Li


I have just cloned the current dpdk master, patch 3 still fails to apply, dpdk-dev-v5-3-4-app-testpmd-introduce-new-tunnel-VXLAN-GPE.patch

git am ./dpdk-dev-v5-3-4-app-testpmd-introduce-new-tunnel-VXLAN-GPE.patch 
Applying: app/testpmd: introduce new tunnel VXLAN-GPE
error: patch failed: app/test-pmd/config.c:997
error: app/test-pmd/config.c: patch does not apply
Patch failed at 0001 app/testpmd: introduce new tunnel VXLAN-GPE
The copy of the patch that failed is found in:
   /root/dpdk_temp/.git/rebase-apply/patch
When you have resolved this problem, run "git am --continue".
If you prefer to skip this patch, run "git am --skip" instead.
To restore the original branch and stop patching, run "git am --abort

Regards,

Bernard.
  
Xueming Li April 19, 2018, 2:24 p.m. UTC | #11
> -----Original Message-----

> From: Iremonger, Bernard <bernard.iremonger@intel.com>

> Sent: Wednesday, April 18, 2018 11:11 PM

> To: Xueming(Steven) Li <xuemingl@mellanox.com>; Lu, Wenzhuo <wenzhuo.lu@intel.com>; Wu, Jingjing

> <jingjing.wu@intel.com>; Thomas Monjalon <thomas@monjalon.net>; Adrien Mazarguil

> <adrien.mazarguil@6wind.com>

> Cc: Nélio Laranjeiro <nelio.laranjeiro@6wind.com>; Shahaf Shuler <shahafs@mellanox.com>; dev@dpdk.org;

> Olivier Matz <olivier.matz@6wind.com>

> Subject: RE: [dpdk-dev] [PATCH v5 0/4] introduce new tunnel types

> 

> Hi Li

> 

> <snip>

> 

> > > > -----Original Message-----

> > > > From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Xueming Li

> > > > Sent: Tuesday, April 17, 2018 4:04 PM

> > > > To: Lu, Wenzhuo <wenzhuo.lu@intel.com>; Wu, Jingjing

> > > > <jingjing.wu@intel.com>; Thomas Monjalon <thomas@monjalon.net>;

> > > > Adrien Mazarguil <adrien.mazarguil@6wind.com>

> > > > Cc: Xueming Li <xuemingl@mellanox.com>; Nelio Laranjeiro

> > > > <nelio.laranjeiro@6wind.com>; Shahaf Shuler

> > > > <shahafs@mellanox.com>; dev@dpdk.org; Olivier Matz

> > > > <olivier.matz@6wind.com>

> > > > Subject: [dpdk-dev] [PATCH v5 0/4] introduce new tunnel types

> > > >

> > > > v5:

> > > > - Fixed VXLAN-GPE comment alignment

> > > > v4:

> > > > - Update testpmd doc for flow VXLAN-GPE paramter.

> > > > v3:

> > > > - Change VXLAN-GPE definition order to avoid ABI compatibility issue.

> > > > v2:

> > > > - Split patch set into public and mlx5 two series, this one is the first.

> > > > v1:

> > > > - Support new tunnel type MPLS-in-GRE and MPLS-in-UDP

> > > > - Remove deprecation notes of rss level

> > > >

> > > > This patchset introduced new tunnel type and related testpmd code:

> > > > - New tunnel type VXLAN-GPE

> > > >

> > > > https://emea01.safelinks.protection.outlook.com/?url=https%3A%2F%2

> > > > Fd

> > > > at

> > > > atracker.ietf.org%2Fdoc%2Fdraft-ietf-nvo3-vxlan-gpe%2F&data=02%7C0

> > > > 1%

> > > > 7C

> > > >

> > xuemingl%40mellanox.com%7C2dffef40890b4cf8ff9d08d5a47d0420%7Ca65297

> > 1

> > > > c7

> > > >

> > d2e4d9ba6a4d149256f461b%7C0%7C0%7C636595779231620631&sdata=%2Bv

> > x%2Fg

> > > > VB

> > > > 3e3BHI%2BYxPxOIpqK6CuKvQQ8qej4B1Faxihc%3D&reserved=0

> > > > - New tunnel type MPLS-in-GRE

> > > >

> > > > https://emea01.safelinks.protection.outlook.com/?url=https%3A%2F%2

> > > > Ft

> > > > oo

> > > >

> > ls.ietf.org%2Fhtml%2Frfc4023&data=02%7C01%7Cxuemingl%40mellanox.com%

> > > > 7C

> > > >

> > 2dffef40890b4cf8ff9d08d5a47d0420%7Ca652971c7d2e4d9ba6a4d149256f461b

> > %

> > > > 7C

> > > >

> > 0%7C0%7C636595779231620631&sdata=wk2wvoB9LSbI2LfHZVvWzmtgS0XQbG

> > NMFL4

> > > > G1

> > > > kyr77E%3D&reserved=0

> > > > - New tunnel type MPLS-in-UDP

> > > >

> > > > https://emea01.safelinks.protection.outlook.com/?url=https%3A%2F%2

> > > > Ft

> > > > oo

> > > >

> > ls.ietf.org%2Fhtml%2Frfc7510&data=02%7C01%7Cxuemingl%40mellanox.com%

> > > > 7C

> > > >

> > 2dffef40890b4cf8ff9d08d5a47d0420%7Ca652971c7d2e4d9ba6a4d149256f461b

> > %

> > > > 7C

> > > >

> > 0%7C0%7C636595779231620631&sdata=4RXbPD9tV7ArcnKsK8IJy%2B9XbKlzKc

> > NBS

> > > > v1

> > > > LXVwwuPs%3D&reserved=0

> > > > - Support GRE extension in testpmd csum forwarding engine

> > > >

> > > > Xueming Li (4):

> > > >   doc: remove RSS configuration change announcement

> > > >   ethdev: introduce new tunnel VXLAN-GPE

> > > >   app/testpmd: introduce new tunnel VXLAN-GPE

> > > >   app/testpmd: add more GRE extension support to csum engine

> > > >

> > > >  app/test-pmd/cmdline_flow.c                 |  24 +++++++

> > > >  app/test-pmd/config.c                       |   2 +

> > > >  app/test-pmd/csumonly.c                     | 103 +++++++++++++++++++++++++--

> > -

> > > >  app/test-pmd/parameters.c                   |  12 +++-

> > > >  app/test-pmd/testpmd.h                      |   2 +

> > > >  doc/guides/prog_guide/rte_flow.rst          |  12 ++++

> > > >  doc/guides/rel_notes/deprecation.rst        |   4 --

> > > >  doc/guides/testpmd_app_ug/run_app.rst       |   5 ++

> > > >  doc/guides/testpmd_app_ug/testpmd_funcs.rst |   4 ++

> > > >  lib/librte_ether/rte_eth_ctrl.h             |   3 +-

> > > >  lib/librte_ether/rte_flow.c                 |   1 +

> > > >  lib/librte_ether/rte_flow.h                 |  27 ++++++++

> > > >  lib/librte_mbuf/rte_mbuf.c                  |   3 +

> > > >  lib/librte_mbuf/rte_mbuf.h                  |   1 +

> > > >  lib/librte_mbuf/rte_mbuf_ptype.c            |   1 +

> > > >  lib/librte_mbuf/rte_mbuf_ptype.h            |  13 ++++

> > > >  lib/librte_net/rte_ether.h                  |  25 +++++++

> > > >  17 files changed, 225 insertions(+), 17 deletions(-)

> > > >

> > > > --

> > > > 2.13.3

> > >

> > > Patch 3 of this patch set fails to apply to the latest master, the

> > > other three

> > patches apply ok.

> > >

> > > Regards,

> > >

> > > Bernard.

> > >

> > I tried it with orgin/master branch and it worked for me.

> > Could you please share more information?

> >

> > Best Regards,

> > Xueming Li

> 

> I have just cloned the current dpdk master, patch 3 still fails to apply, dpdk-dev-v5-3-4-app-testpmd-

> introduce-new-tunnel-VXLAN-GPE.patch

> 

> git am ./dpdk-dev-v5-3-4-app-testpmd-introduce-new-tunnel-VXLAN-GPE.patch

> Applying: app/testpmd: introduce new tunnel VXLAN-GPE

> error: patch failed: app/test-pmd/config.c:997

> error: app/test-pmd/config.c: patch does not apply Patch failed at 0001 app/testpmd: introduce new

> tunnel VXLAN-GPE The copy of the patch that failed is found in:

>    /root/dpdk_temp/.git/rebase-apply/patch

> When you have resolved this problem, run "git am --continue".

> If you prefer to skip this patch, run "git am --skip" instead.

> To restore the original branch and stop patching, run "git am --abort

> 


You are correct, I can reproduce it now. Will send out a new v6 series soon, thanks.

> Regards,

> 

> Bernard.
  
Thomas Monjalon April 19, 2018, 2:57 p.m. UTC | #12
19/04/2018 16:24, Xueming(Steven) Li:
> From: Iremonger, Bernard <bernard.iremonger@intel.com>
> > I have just cloned the current dpdk master, patch 3 still fails to apply, dpdk-dev-v5-3-4-app-testpmd-
> > introduce-new-tunnel-VXLAN-GPE.patch
> > 
> > git am ./dpdk-dev-v5-3-4-app-testpmd-introduce-new-tunnel-VXLAN-GPE.patch
> > Applying: app/testpmd: introduce new tunnel VXLAN-GPE
> > error: patch failed: app/test-pmd/config.c:997
> > error: app/test-pmd/config.c: patch does not apply Patch failed at 0001 app/testpmd: introduce new
> > tunnel VXLAN-GPE The copy of the patch that failed is found in:
> >    /root/dpdk_temp/.git/rebase-apply/patch
> > When you have resolved this problem, run "git am --continue".
> > If you prefer to skip this patch, run "git am --skip" instead.
> > To restore the original branch and stop patching, run "git am --abort
> > 
> 
> You are correct, I can reproduce it now. Will send out a new v6 series soon, thanks.

You should rebase on top of next-net.
Ferruh, you confirm you will take those patches in next-net?
  
Ferruh Yigit April 19, 2018, 7:56 p.m. UTC | #13
On 4/19/2018 3:57 PM, Thomas Monjalon wrote:
> 19/04/2018 16:24, Xueming(Steven) Li:
>> From: Iremonger, Bernard <bernard.iremonger@intel.com>
>>> I have just cloned the current dpdk master, patch 3 still fails to apply, dpdk-dev-v5-3-4-app-testpmd-
>>> introduce-new-tunnel-VXLAN-GPE.patch
>>>
>>> git am ./dpdk-dev-v5-3-4-app-testpmd-introduce-new-tunnel-VXLAN-GPE.patch
>>> Applying: app/testpmd: introduce new tunnel VXLAN-GPE
>>> error: patch failed: app/test-pmd/config.c:997
>>> error: app/test-pmd/config.c: patch does not apply Patch failed at 0001 app/testpmd: introduce new
>>> tunnel VXLAN-GPE The copy of the patch that failed is found in:
>>>    /root/dpdk_temp/.git/rebase-apply/patch
>>> When you have resolved this problem, run "git am --continue".
>>> If you prefer to skip this patch, run "git am --skip" instead.
>>> To restore the original branch and stop patching, run "git am --abort
>>>
>>
>> You are correct, I can reproduce it now. Will send out a new v6 series soon, thanks.
> 
> You should rebase on top of next-net.
> Ferruh, you confirm you will take those patches in next-net?

Yes, I was thinking this for next-net, because it is ethdev related
  
Xueming Li April 20, 2018, 11:56 a.m. UTC | #14
v6:
- Add MPLS-in-GRE and MPLS-in-UDP back
- UPdate comment alignment 
v5:
- Fixed VXLAN-GPE comment alignment
- Removed MPLS-in-GRE and MPLS-in-UDP patch
v4:
- Update testpmd doc for flow VXLAN-GPE paramter.
v3:
- Change VXLAN-GPE definition order to avoid ABI compatibility issue.
v2:
- Split patch set into public and mlx5 two series, this one is the first.
v1:
- Support new tunnel type MPLS-in-GRE and MPLS-in-UDP
- Remove deprecation notes of rss level

This patchset introduced new tunnel type and related testpmd code:
- New tunnel type VXLAN-GPE
  https://datatracker.ietf.org/doc/draft-ietf-nvo3-vxlan-gpe/
- New tunnel type MPLS-in-GRE
  https://tools.ietf.org/html/rfc4023
- New tunnel type MPLS-in-UDP
  https://tools.ietf.org/html/rfc7510
- Support GRE extension in testpmd csum forwarding engine

Xueming Li (5):
  doc: remove RSS configuration change announcement
  ethdev: introduce new tunnel VXLAN-GPE
  ethdev: introduce tunnel type MPLS-in-GRE and MPLS-in-UDP
  app/testpmd: introduce new tunnel VXLAN-GPE
  app/testpmd: add more GRE extension support to csum engine

 app/test-pmd/cmdline_flow.c                 |  24 +++++++
 app/test-pmd/config.c                       |   2 +
 app/test-pmd/csumonly.c                     | 103 +++++++++++++++++++++++++---
 app/test-pmd/parameters.c                   |  12 +++-
 app/test-pmd/testpmd.h                      |   2 +
 doc/guides/prog_guide/rte_flow.rst          |  12 ++++
 doc/guides/rel_notes/deprecation.rst        |   4 --
 doc/guides/testpmd_app_ug/run_app.rst       |   5 ++
 doc/guides/testpmd_app_ug/testpmd_funcs.rst |   4 ++
 lib/librte_ether/rte_eth_ctrl.h             |   3 +-
 lib/librte_ether/rte_flow.c                 |   1 +
 lib/librte_ether/rte_flow.h                 |  27 ++++++++
 lib/librte_mbuf/rte_mbuf.c                  |   3 +
 lib/librte_mbuf/rte_mbuf.h                  |   1 +
 lib/librte_mbuf/rte_mbuf_ptype.c            |   3 +
 lib/librte_mbuf/rte_mbuf_ptype.h            |  47 +++++++++++++
 lib/librte_net/rte_ether.h                  |  25 +++++++
 17 files changed, 261 insertions(+), 17 deletions(-)
  
Xueming Li April 23, 2018, 12:16 p.m. UTC | #15
v7:
- Fixed display name of MPLS-in-GRE and MPLS-in-UDP
v6:
- Add MPLS-in-GRE and MPLS-in-UDP back
- UPdate comment alignment
v5:
- Fixed VXLAN-GPE comment alignment
- Removed MPLS-in-GRE and MPLS-in-UDP patch
v4:
- Update testpmd doc for flow VXLAN-GPE paramter.
v3:
- Change VXLAN-GPE definition order to avoid ABI compatibility issue.
v2:
- Split patch set into public and mlx5 two series, this one is the first.
v1:
- Support new tunnel type MPLS-in-GRE and MPLS-in-UDP
- Remove deprecation notes of rss level

This patchset introduced new tunnel type and related testpmd code:
- New tunnel type VXLAN-GPE
  https://datatracker.ietf.org/doc/draft-ietf-nvo3-vxlan-gpe/
- New tunnel type MPLS-in-GRE
  https://tools.ietf.org/html/rfc4023
- New tunnel type MPLS-in-UDP
  https://tools.ietf.org/html/rfc7510
- Support GRE extension in testpmd csum forwarding engine


Xueming Li (5):
  doc: remove RSS configuration change announcement
  ethdev: introduce new tunnel VXLAN-GPE
  ethdev: introduce tunnel type MPLS-in-GRE and MPLS-in-UDP
  app/testpmd: introduce new tunnel VXLAN-GPE
  app/testpmd: add more GRE extension support to csum engine

 app/test-pmd/cmdline_flow.c                 |  24 +++++++
 app/test-pmd/config.c                       |   2 +
 app/test-pmd/csumonly.c                     | 103 +++++++++++++++++++++++++---
 app/test-pmd/parameters.c                   |  12 +++-
 app/test-pmd/testpmd.h                      |   2 +
 doc/guides/prog_guide/rte_flow.rst          |  12 ++++
 doc/guides/rel_notes/deprecation.rst        |   4 --
 doc/guides/testpmd_app_ug/run_app.rst       |   5 ++
 doc/guides/testpmd_app_ug/testpmd_funcs.rst |   4 ++
 lib/librte_ether/rte_eth_ctrl.h             |   3 +-
 lib/librte_ether/rte_flow.c                 |   1 +
 lib/librte_ether/rte_flow.h                 |  27 ++++++++
 lib/librte_mbuf/rte_mbuf.c                  |   3 +
 lib/librte_mbuf/rte_mbuf.h                  |   1 +
 lib/librte_mbuf/rte_mbuf_ptype.c            |   3 +
 lib/librte_mbuf/rte_mbuf_ptype.h            |  47 +++++++++++++
 lib/librte_net/rte_ether.h                  |  25 +++++++
 17 files changed, 261 insertions(+), 17 deletions(-)
  
Ferruh Yigit April 25, 2018, 9:31 p.m. UTC | #16
On 4/23/2018 1:16 PM, Xueming Li wrote:
> v7:
> - Fixed display name of MPLS-in-GRE and MPLS-in-UDP
> v6:
> - Add MPLS-in-GRE and MPLS-in-UDP back
> - UPdate comment alignment
> v5:
> - Fixed VXLAN-GPE comment alignment
> - Removed MPLS-in-GRE and MPLS-in-UDP patch
> v4:
> - Update testpmd doc for flow VXLAN-GPE paramter.
> v3:
> - Change VXLAN-GPE definition order to avoid ABI compatibility issue.
> v2:
> - Split patch set into public and mlx5 two series, this one is the first.
> v1:
> - Support new tunnel type MPLS-in-GRE and MPLS-in-UDP
> - Remove deprecation notes of rss level
> 
> This patchset introduced new tunnel type and related testpmd code:
> - New tunnel type VXLAN-GPE
>   https://datatracker.ietf.org/doc/draft-ietf-nvo3-vxlan-gpe/
> - New tunnel type MPLS-in-GRE
>   https://tools.ietf.org/html/rfc4023
> - New tunnel type MPLS-in-UDP
>   https://tools.ietf.org/html/rfc7510
> - Support GRE extension in testpmd csum forwarding engine
> 
> 
> Xueming Li (5):
>   doc: remove RSS configuration change announcement
>   ethdev: introduce new tunnel VXLAN-GPE
>   ethdev: introduce tunnel type MPLS-in-GRE and MPLS-in-UDP
>   app/testpmd: introduce new tunnel VXLAN-GPE
>   app/testpmd: add more GRE extension support to csum engine

Series applied to dpdk-next-net/master, thanks.

(Except 1/5)
  

Patch

diff --git a/lib/librte_ether/rte_ethdev.h b/lib/librte_ether/rte_ethdev.h
index 0361533..baaeb3c 100644
--- a/lib/librte_ether/rte_ethdev.h
+++ b/lib/librte_ether/rte_ethdev.h
@@ -398,6 +398,15 @@  struct rte_eth_rss_conf {
 	uint8_t *rss_key;    /**< If not NULL, 40-byte hash key. */
 	uint8_t rss_key_len; /**< hash key length in bytes. */
 	uint64_t rss_hf;     /**< Hash functions to apply - see below. */
+	/**
+	 * RSS hash calculation on tunnel level:
+	 *  0: outer RSS, default.
+	 *  1: inner RSS.
+	 *  2-255: deep RSS level.
+	 * Please note that tunnels not interlaced with [IP|TCP|UDP] are
+	 * deemed as one level, such as MPLS over GRE.
+	 */
+	uint8_t rss_level;
 };
 
 /*