Go to file
Anatoly Burakov 5282bb1c36 mem: allow memseg lists to be marked as external
When we allocate and use DPDK memory, we need to be able to
differentiate between DPDK hugepage segments and segments that
were made part of DPDK but are externally allocated. Add such
a property to memseg lists.

This breaks the ABI, so document the change in release notes.
This also breaks a few internal assumptions about memory
contiguousness, so adjust malloc code in a few places.

All current calls for memseg walk functions were adjusted to
ignore external segments where it made sense.

Mempools is a special case, because we may be asked to allocate
a mempool on a specific socket, and we need to ignore all page
sizes on other heaps or other sockets. Previously, this
assumption of knowing all page sizes was not a problem, but it
will be now, so we have to match socket ID with page size when
calculating minimum page size for a mempool.

Signed-off-by: Anatoly Burakov <anatoly.burakov@intel.com>
Acked-by: Andrew Rybchenko <arybchenko@solarflare.com>
Acked-by: Yongseok Koh <yskoh@mellanox.com>
2018-10-11 10:24:29 +02:00
app app/eventdev: support Tx adapter 2018-10-01 16:54:00 +02:00
buildtools devtools: use a common prefix for temporary files 2018-10-01 23:51:45 +02:00
config eventdev: add eth Tx adapter implementation 2018-10-01 16:51:13 +02:00
devtools devtools: use a common prefix for temporary files 2018-10-01 23:51:45 +02:00
doc mem: allow memseg lists to be marked as external 2018-10-11 10:24:29 +02:00
drivers mem: allow memseg lists to be marked as external 2018-10-11 10:24:29 +02:00
examples examples/eventdev_pipeline: support Tx adapter 2018-10-01 16:52:47 +02:00
kernel kni: return failure for all ioctls 2018-10-02 17:57:00 +02:00
lib mem: allow memseg lists to be marked as external 2018-10-11 10:24:29 +02:00
license license: introduce SPDX identifiers 2018-01-04 22:41:38 +01:00
mk event/dsw: add device registration and build system 2018-10-01 16:44:14 +02:00
pkg version: 18.08.0 2018-08-09 23:11:26 +02:00
test mem: allow memseg lists to be marked as external 2018-10-11 10:24:29 +02:00
usertools usertools: add octeontx zip device for binding 2018-07-25 13:36:26 +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 OCTEONTX 2018-10-02 17:56:39 +02:00
Makefile license: use SPDX tag in root makefile 2018-01-04 22:41:38 +01:00
meson_options.txt net/mlx5: support meson build 2018-09-28 01:41:01 +02:00
meson.build build: generate API documentation with meson 2018-09-18 15:50:54 +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