Matan Azrad 295f7ed2dd net/failsafe: fix Rx clean race
When removing a device, the fail-safe checks that it is not within its
datapath before cleaning it.

When checking whether an Rx burst should be performed on a device, the
remove flag is not checked. Thus the port could still enter its datapath
and miss a removal round. Furthermore, there is a race between the
thread removing the device and the polling thread.

Check the remove flag before entering a sub-device Rx burst when in safe
mode. This check mitigates the aforementioned race condition.

Fixes: 72a57bfd9a0e ("net/failsafe: add fast burst functions")
Cc: stable@dpdk.org

Signed-off-by: Matan Azrad <matan@mellanox.com>
Acked-by: Gaetan Rivet <gaetan.rivet@6wind.com>
2017-10-27 01:05:55 +02:00
2017-10-27 00:53:07 +02:00
2017-10-26 23:17:31 +02:00
2017-10-27 01:05:55 +02:00
2017-10-27 01:05:55 +02:00
2017-10-26 23:17:31 +02:00
2017-10-09 01:54:29 +02:00
2017-10-27 00:53:07 +02:00
2016-11-13 15:25:12 +01:00
2017-02-28 16:04:18 +01:00
2013-07-25 14:43:06 +02:00
2014-06-11 00:29:34 +02:00
2015-12-13 22:06:58 +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 license for the core libraries and
drivers. The kernel components are GPLv2 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
Description
No description provided
Readme 128 MiB
Languages
C 99.1%
Meson 0.5%
Python 0.2%
Shell 0.1%