Go to file
Chengwen Feng 9bc2289fe5 net/hns3: refactor VF LSC event report
Currently, VF driver periodically obtains link status from PF kernel
driver, and reports lsc event when detects link status change. Because
the period is 1 second, it's probably too late to report especially
in such as bonding scenario.

To solve this problem we use the following scheme:
1. PF kernel driver support immediate push link status to all VFs when
   it detects the link status changes.
2. VF driver will detect PF kernel driver whether support push link
   status in device init stage by sending request link info mailbox
   message to PF, PF then tell VF the push capability by extend
   HNS3_MBX_LINK_STAT_CHANGE mailbox message.
3. VF driver marks RTE_PCI_DRV_INTR_LSC in rte_pci_driver by default,
   when it detects PF doesn't support push link status then it will clear
   RTE_ETH_DEV_INTR_LSC flag.

So if PF kernel driver supports push link status to VF, then VF driver
will have RTE_ETH_DEV_INTR_LSC capability.

Signed-off-by: Chengwen Feng <fengchengwen@huawei.com>
Signed-off-by: Min Hu (Connor) <humin29@huawei.com>
2021-04-13 02:44:20 +02:00
.ci build: update minimum required Meson version 2021-04-16 18:51:51 +02:00
.github/workflows ci: bump ABI reference version 2021-04-16 14:09:03 +02:00
app test: fix TCP header initialization 2021-04-09 12:43:25 +02:00
buildtools buildtools: fix all drivers disabled on Windows 2021-04-17 12:49:23 +02:00
config config/arm: fix implementer and its SoCs 2021-04-15 22:34:37 +02:00
devtools cryptodev: support multiple cipher data-units 2021-04-16 12:43:33 +02:00
doc net/hns3: refactor VF LSC event report 2021-04-13 02:44:20 +02:00
drivers net/hns3: refactor VF LSC event report 2021-04-13 02:44:20 +02:00
examples examples/l2fwd-crypto: remove key size validation 2021-04-16 12:43:33 +02:00
kernel build: support KNI cross-compilation 2021-03-15 23:43:40 +01:00
lib cryptodev: formalize key wrap method in API 2021-04-16 12:43:33 +02:00
license license: fix typos 2021-04-13 13:56:52 +02:00
usertools usertools: show hugepages requested/set on failure 2021-03-25 18:07:47 +01: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 regex/mlx5: introduce driver for BlueField 2 2020-07-21 19:04:05 +02:00
.travis.yml ci: bump ABI reference version 2021-04-16 14:09:03 +02:00
ABI_VERSION version: 21.05-rc0 2021-02-15 11:08:19 +01:00
MAINTAINERS pflock: add phase-fair reader writer locks 2021-04-14 21:59:47 +02:00
Makefile build: create dummy Makefile 2020-09-07 23:51:57 +02:00
meson_options.txt config/arm: add platform config option 2021-04-15 22:34:37 +02:00
meson.build build: update minimum required Meson version 2021-04-16 18:51:51 +02:00
README license: introduce SPDX identifiers 2018-01-04 22:41:38 +01:00
VERSION version: 21.05-rc0 2021-02-15 11:08:19 +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