[dpdk-dev,01/18] ethdev: support tunnel RSS level
Checks
Commit Message
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
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.
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(-)
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(-)
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(-)
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(-)
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>
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(-)
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.
> -----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
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.
> -----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.
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?
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
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(-)
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(-)
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)
@@ -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;
};
/*