Go to file
Viacheslav Ovsiienko 37d6fc30c1 net/mlx5: fix check for orphan wait descriptor
The mlx5 PMD supports send scheduling feature, it allows
to send packets at specified moment of time, to do that
PMD pushes special wait descriptor (WQE) to the hardware
queue and then pushes descriptor for packet data as usual.
If queue is close to be full or there is no enough elts
buffers to store mbufs being sent the data descriptors might
be not pushed and the orphan wait WQE (not followed by the
data) might reside in queue on tx_burst routine exit.

To avoid orphan wait WQEs there was the check for enough
free space in the queue WQE buffer and enough amount of the
free elts in queue mbuf storage. This check was incomplete
and did not cover all the cases for Enhanced Multi-Packet
Write descriptors.

Fixes: 2f827f5ea6 ("net/mlx5: support scheduling on send routine template")
Cc: stable@dpdk.org

Signed-off-by: Viacheslav Ovsiienko <viacheslavo@nvidia.com>
2022-10-02 09:13:52 +02:00
.ci ci: add RISC-V cross compilation 2022-06-08 11:26:34 +02:00
.github/workflows test: invoke all telemetry commands 2022-08-25 16:23:17 +02:00
app eventdev/eth_tx: add queue start/stop API 2022-09-28 05:47:38 +02:00
buildtools build: add definitions for use as Meson subproject 2022-06-07 20:49:20 +02:00
config sched: enable congestion management at runtime 2022-08-25 16:18:06 +02:00
devtools eal: deprecate RTE_FUNC_PTR_* macros 2022-09-23 16:14:34 +02:00
doc eal: fix thread name for high order lcores 2022-09-30 11:23:12 +02:00
drivers net/mlx5: fix check for orphan wait descriptor 2022-10-02 09:13:52 +02:00
examples examples/vhost: fix use after free 2022-09-29 10:13:22 +02:00
kernel kni: use dedicated function to set MAC address 2022-06-08 19:17:21 +02:00
lib eal: fix thread name for high order lcores 2022-09-30 11:23:12 +02:00
license lib: remove librte_ prefix from directory names 2021-04-21 14:04:09 +02:00
usertools usertools: add options for hugetlbfs mount point owner 2022-06-27 02:24:12 +02:00
.editorconfig devtools: clarify that lines up to 100 characters are ok 2021-11-25 11:51:24 +01:00
.gitattributes improve git diff 2016-11-13 15:25:12 +01:00
.gitignore doc: add eventdev feature matrices 2021-11-26 16:29:25 +01:00
.travis.yml version: 22.11-rc0 2022-07-21 12:13:48 +02:00
ABI_VERSION version: 22.11-rc0 2022-07-21 12:13:48 +02:00
MAINTAINERS raw/ioat: remove deprecated driver 2022-09-28 14:41:07 +02:00
Makefile build: create dummy Makefile 2020-09-07 23:51:57 +02:00
meson_options.txt config: add option for atomic mbuf reference counting 2021-10-25 17:53:30 +02:00
meson.build build: enable developer mode for all working trees 2022-08-29 12:53:49 +02:00
README license: introduce SPDX identifiers 2018-01-04 22:41:38 +01:00
VERSION version: 22.11-rc0 2022-07-21 12:13:48 +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