Go to file
Matan Azrad ac7d3b6ddf ethdev: add lock to port allocation check
When comparing the port name, there can be a race condition with
a thread allocating a new port and writing the name at the same time.
It can lead to match with a partial name by error.

The check of the port is now considered as a critical section
protected with locks.

This fix will be even more required for multi-process when the
port availability will rely only on the name, in a following patch.

Fixes: 84934303a1 ("ethdev: synchronize port allocation")
Cc: stable@dpdk.org

Signed-off-by: Matan Azrad <matan@mellanox.com>
Acked-by: Thomas Monjalon <thomas@monjalon.net>
Reviewed-by: Andrew Rybchenko <arybchenko@solarflare.com>
Reviewed-by: Stephen Hemminger <stephen@networkplumber.org>
2018-05-14 22:31:53 +01:00
app app/testpmd: add commands to test new offload API 2018-05-14 22:31:52 +01:00
buildtools buildtools: output build failure reason to stderr 2018-02-08 22:25:37 +01:00
config net/mlx4: remove memory region support 2018-05-14 22:31:51 +01:00
devtools compress/isal: add skeleton ISA-L compression PMD 2018-05-10 17:46:20 +01:00
doc app/testpmd: add commands to test new offload API 2018-05-14 22:31:52 +01:00
drivers ethdev: add probing finish function 2018-05-14 22:31:53 +01:00
examples examples/vhost: fix header copy to discontiguous desc buffer 2018-05-14 22:31:03 +01:00
kernel kni: fix possible mbuf leaks and speed up port release 2018-05-13 23:58:20 +02:00
lib ethdev: add lock to port allocation check 2018-05-14 22:31:53 +01:00
license license: introduce SPDX identifiers 2018-01-04 22:41:38 +01:00
mk bpf: add ability to load eBPF program from ELF object file 2018-05-12 00:35:20 +02:00
pkg version: 18.02.0 2018-02-14 19:11:02 +01:00
test ethdev: add probing finish function 2018-05-14 22:31:53 +01:00
usertools usertools: add Cavium TIM as an event device 2018-04-16 11:11:06 +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 bpf: add missed experimental tags 2018-05-14 17:42:43 +02:00
Makefile license: use SPDX tag in root makefile 2018-01-04 22:41:38 +01:00
meson_options.txt net/mvpp2: add to meson build 2018-04-19 14:10:44 +02:00
meson.build kernel: fix cross-build of Linux modules with meson 2018-05-08 22:21:38 +02: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