Go to file
Gage Eads e30dd31847 service: add mechanism for quiescing
Existing service functions allow us to stop a service, but doing so doesn't
guarantee that the service has finished running on a service core. This
commit introduces rte_service_may_be_active(), which returns whether the
service may be executing on one or more lcores currently, or definitely is
not.

The service core layer supports this function by setting a flag when
a service core is going to execute a service, and unsetting the flag when
the core is no longer able to run the service (its runstate becomes stopped
or the lcore is no longer mapped).

With this new function, applications can set a service's runstate to
stopped, then poll rte_service_may_be_active() until it returns false. At
that point, the service is quiesced.

Signed-off-by: Gage Eads <gage.eads@intel.com>
Acked-by: Harry van Haaren <harry.van.haaren@intel.com>
2018-07-06 06:54:49 +02:00
app remove useless constructor headers 2018-07-12 00:00:35 +02:00
buildtools mk: fix cross build 2018-07-11 21:13:25 +02:00
config build: fix for host clang and cross gcc 2018-07-11 21:14:21 +02:00
devtools devtools: expand meson cross compiling test coverage 2018-07-11 21:14:21 +02:00
doc doc: add UDP/IPv4 GSO in guides 2018-07-11 23:55:58 +02:00
drivers event/octeontx: fix flush callback 2018-07-06 06:54:49 +02:00
examples build: fix for host clang and cross gcc 2018-07-11 21:14:21 +02:00
kernel igb_uio: fix build with lock down checks 2018-07-11 18:49:21 +02:00
lib service: add mechanism for quiescing 2018-07-06 06:54:49 +02:00
license license: introduce SPDX identifiers 2018-01-04 22:41:38 +01:00
mk mk: fix cross build 2018-07-11 21:13:25 +02:00
pkg version: 18.05.0 2018-05-30 22:55:57 +02:00
test service: add mechanism for quiescing 2018-07-06 06:54:49 +02: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 maintainers: update for Mellanox PMDs 2018-07-11 19:10:42 +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 version: 18.08-rc0 2018-06-01 12:58:36 +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