Go to file
Seth Howell fba0ca2274 malloc: notify primary process about hotplug in secondary
When secondary process hotplugs memory, it sends a request
to primary, which then performs the real mmap() and sends
sync requests to all secondary processes. Upon receiving
such sync request, each secondary process will notify the
upper layers of hotplugged memory (and will call all
locally registered event callbacks).

In the end we'll end up with memory event callbacks fired
in all the processes except the primary, which is a bug.

This gets critical if memory is hotplugged while a VFIO
device is attached, as the VFIO memory registration -
which is done from a memory event callback present in the
primary process only - is never called.

After this patch, a primary process fires memory event
callbacks before secondary processes start their
synchronizations - both for hotplug and hotremove.

Fixes: 07dcbfe010 ("malloc: support multiprocess memory hotplug")
Cc: stable@dpdk.org

Signed-off-by: Seth Howell <seth.howell@intel.com>
Signed-off-by: Darek Stojaczyk <dariusz.stojaczyk@intel.com>
Reviewed-by: Anatoly Burakov <anatoly.burakov@intel.com>
2018-12-20 15:25:34 +01:00
app app/compress-perf: refactor code 2018-12-19 11:19:11 +01:00
buildtools mk: allow renaming of build directories 2018-11-14 01:46:00 +01:00
config app/compress-perf: add parser 2018-12-19 11:19:10 +01:00
devtools devtools: fix symbol check when adding experimental section 2018-12-01 00:44:31 +01:00
doc malloc: add option --match-allocations 2018-12-20 13:01:08 +01:00
drivers vfio: support 64KB kernel page size 2018-12-20 00:12:20 +01:00
examples examples/ipv4_multicast: remove useless mbuf info copy 2018-12-19 22:27:32 +01:00
kernel kni: fix build on Linux < 3.14 2018-10-27 00:18:06 +02:00
lib malloc: notify primary process about hotplug in secondary 2018-12-20 15:25:34 +01:00
license fix dpdk.org URLs 2018-11-26 20:19:24 +01:00
mk mk: do not install meson.build in usertools 2018-12-19 00:59:13 +01:00
test malloc: add option --match-allocations 2018-12-20 13:01:08 +01:00
usertools usertools: skip empty categories in devices status 2018-11-23 01:43:20 +01: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 doc: add details for compress-perf app 2018-12-19 11:19:11 +01:00
Makefile license: use SPDX tag in root makefile 2018-01-04 22:41:38 +01:00
meson_options.txt build: add option to override drivers install directory 2018-10-27 23:22:21 +02:00
meson.build version: 19.02-rc0 2018-11-30 16:20:33 +00: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