Go to file
Wei Hu (Xavier) e28bc14765 net/hns3: fix VLAN tags reported in Rx
Currently, based on hns3 network engine, driver always reports the
incoming packet's VLAN tags to the structure rte_mbuf those are the
output parameter pointers in '.rx_pkt_burst' ops implementation
function, and never reports PKT_RX_VLAN_STRIPPED flag to the structure
rte_mbuf even if Upper Level Process configured hardware strip by
calling rte_eth_dev_configure or rte_eth_dev_set_vlan_offload API
function. It makes the ULP unable to know the stripping of VLAN.

It is supposed to present the stripped flags to the mbuf ol_flags, and
report the right VLAN tag.

And as hardware constraints, the stripped VLAN tag will always in the Rx
descriptor. Even if setting a PVID based on the function, the PVID will
be reported to the Rx descriptor. So the driver need to determine which
VLAN tag should be reported to output the structure rte_mbuf in
'.rx_pkt_burst' ops implementation function named hns3_recv_pkts.

Fixes: bba6366983 ("net/hns3: support Rx/Tx and related operations")
Fixes: 411d23b9ea ("net/hns3: support VLAN")
Cc: stable@dpdk.org

Signed-off-by: Chengchang Tang <tangchengchang@huawei.com>
Signed-off-by: Wei Hu (Xavier) <xavier.huwei@huawei.com>
2020-06-05 11:32:08 +02:00
.ci ci: reduce examples in static builds 2020-04-17 23:34:08 +02:00
app app/testpmd: fix memory leak on error path 2020-05-28 17:57:07 +02:00
buildtools compat: provide experimental alias for matured ABI 2020-05-18 19:46:25 +02:00
config build: disable gcc 10 zero-length-bounds warning 2020-05-18 13:54:36 +02:00
devtools doc: prefer https when pointing to dpdk.org 2020-05-24 23:42:36 +02:00
doc net/mlx5: add reclaim memory mode 2020-06-03 17:19:26 +02:00
drivers net/hns3: fix VLAN tags reported in Rx 2020-06-05 11:32:08 +02:00
examples examples/ip_pipeline: remove check of null response 2020-05-24 18:24:28 +02:00
kernel kernel/linux: error out on module build failure 2020-05-19 17:59:57 +02:00
lib telemetry: fix init log printing 2020-05-24 18:01:31 +02:00
license eal: move OS-specific sub-directories 2020-03-31 13:08:55 +02:00
mk mk: add note about make system deprecation 2020-05-19 18:04:19 +02:00
usertools usertools: read PCI device name as UTF-8 2020-05-24 19:09:13 +02:00
.editorconfig devtools: add EditorConfig file 2020-02-22 21:05:22 +01:00
.gitattributes improve git diff 2016-11-13 15:25:12 +01:00
.gitignore doc: add feature matrix table for bbdev 2020-04-19 22:34:26 +02:00
.travis.yml version: 20.08-rc0 2020-05-27 11:37:33 +02:00
ABI_VERSION version: 20.08-rc0 2020-05-27 11:37:33 +02:00
GNUmakefile test: move to app directory 2019-02-26 15:29:27 +01:00
MAINTAINERS devtools: remove old ABI validation script 2020-05-24 22:36:45 +02:00
Makefile remove blank lines at end of file 2019-11-26 00:12:08 +01:00
meson_options.txt trace: introduce new subsystem 2020-04-23 15:39:06 +02:00
meson.build build: add arch-specific header path to global includes 2020-05-10 23:45:02 +02:00
README license: introduce SPDX identifiers 2018-01-04 22:41:38 +01:00
VERSION version: 20.08-rc0 2020-05-27 11:37:33 +02: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