3f90d1a00a
In the current implementation of the single port hairpin, there is an implicit splitting process for actions. When inserting a hairpin flow, all the actions will be included with the ingress attribute. The flow engine will check and decide which actions should be moved into the TX flow part, e.g., encapsulation, VLAN push. In some NICs, some actions can only be done in one direction. Since the hairpin flow will be split into two parts, such validation will be skipped. With the hairpin explicit TX flow mode, no splitting is needed any more. The hairpin flow may have no big difference from a standard flow (except the queue). The application should take full charge of the actions and the flow engine should validate the hairpin flow in the same way as other flows. In the meanwhile, a new internal API is added to get the hairpin configuration. This will bypass the useless atomic operation to save the CPU cycles. Signed-off-by: Bing Zhao <bingz@nvidia.com> Acked-by: Viacheslav Ovsiienko <viacheslavo@nvidia.com> |
||
---|---|---|
.ci | ||
app | ||
buildtools | ||
config | ||
devtools | ||
doc | ||
drivers | ||
examples | ||
kernel | ||
lib | ||
license | ||
usertools | ||
.editorconfig | ||
.gitattributes | ||
.gitignore | ||
.travis.yml | ||
ABI_VERSION | ||
MAINTAINERS | ||
Makefile | ||
meson_options.txt | ||
meson.build | ||
README | ||
VERSION |
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