Go to file
Yongseok Koh 4a78c88e3b net/mlx5: fix Verbs flow tunnel
1) Fix layer parsing
In translation of tunneled flows, dev_flow->layers must not be used to
check tunneled layer as it contains all the layers parsed from
flow_drv_prepare(). Checking tunneled layer is needed to set
IBV_FLOW_SPEC_INNER and it should be based on dynamic parsing. With
dev_flow->layers on a tunneled flow, items will always be interpreted as
inner as dev_flow->layer already has all the items.

2) Refactoring code
It is partly because flow_verbs_translate_item_*() sets layer flag. Same
code is repeating in multiple locations and that could be error-prone.

- Introduce VERBS_SPEC_INNER() to unify setting IBV_FLOW_SPEC_INNER.
- flow_verbs_translate_item_*() doesn't set parsing result -
  MLX5_FLOW_LAYER_*.
- flow_verbs_translate_item_*() doesn't set priority or adjust hashfields
  but does only item translation. Both have to be done outside.
- Make more consistent between Verbs and DV.

3) Remove flow_verbs_mark_update()
This code can never be reached as validation prohibits specifying mark and
flag actions together. No need to convert flag to mark.

Fixes: 84c406e745 ("net/mlx5: add flow translate function")

Signed-off-by: Yongseok Koh <yskoh@mellanox.com>
Acked-by: Ori Kam <orika@mellanox.com>
2018-11-05 15:01:25 +01:00
app app/testpmd: fix port status for new bonded devices 2018-11-05 15:01:25 +01:00
buildtools buildtools: fix build for some mktemp 2018-10-27 15:30:25 +02:00
config vfio: disable in FreeBSD build with meson 2018-10-27 17:57:55 +02:00
devtools devtools: add explicit warnings for forbidden tokens 2018-11-04 21:54:04 +01:00
doc net/mlx5: support default RSS key as null 2018-11-05 15:01:25 +01:00
drivers net/mlx5: fix Verbs flow tunnel 2018-11-05 15:01:25 +01:00
examples examples/fips_validation: fix build 2018-11-05 21:04:18 +01:00
kernel kni: fix build on Linux < 3.14 2018-10-27 00:18:06 +02:00
lib vhost/crypto: fix inferred misuse of enum 2018-11-05 15:01:25 +01:00
license license: introduce SPDX identifiers 2018-01-04 22:41:38 +01:00
mk mk: disable gcc AVX512F support 2018-11-04 21:55:17 +01:00
pkg version: 18.08.0 2018-08-09 23:11:26 +02:00
test test/compress: improve debug logs 2018-11-02 12:26:06 +01:00
usertools usertools: add client script for telemetry 2018-10-27 15:21:38 +02:00
.gitattributes improve git diff 2016-11-13 15:25:12 +01:00
.gitignore doc: add compression driver and ISA-L PMD guides 2018-05-10 17:46:20 +01:00
GNUmakefile move kernel modules directories 2018-03-21 23:04:21 +01:00
MAINTAINERS examples/fips_validation: add crypto FIPS application 2018-11-02 12:26:06 +01:00
Makefile license: use SPDX tag in root makefile 2018-01-04 22:41:38 +01:00
meson_options.txt build: add option to override drivers install directory 2018-10-27 23:22:21 +02:00
meson.build version: 18.11-rc1 2018-10-29 04:08:26 +01:00
README license: introduce SPDX identifiers 2018-01-04 22:41:38 +01:00

DPDK is a set of libraries and drivers for fast packet processing.
It supports many processor architectures and both FreeBSD and Linux.

The DPDK uses the Open Source BSD-3-Clause license for the core libraries
and drivers. The kernel components are GPL-2.0 licensed.

Please check the doc directory for release notes,
API documentation, and sample application information.

For questions and usage discussions, subscribe to: users@dpdk.org
Report bugs and issues to the development mailing list: dev@dpdk.org