Go to file
Anatoly Burakov 43e4631371 vfio: support memory event callbacks
Enable callbacks on first device attach, disable callbacks
on last device attach.

PPC64 IOMMU does memseg walk, which will cause a deadlock on
trying to do it inside a callback, so provide a local,
thread-unsafe copy of memseg walk.

PPC64 IOMMU also may remap the entire memory map for DMA while
adding new elements to it, so change user map list lock to a
recursive lock. That way, we can safely enter rte_vfio_dma_map(),
lock the user map list, enter DMA mapping function and lock the
list again (for reading previously existing maps).

Signed-off-by: Anatoly Burakov <anatoly.burakov@intel.com>
Tested-by: Santosh Shukla <santosh.shukla@caviumnetworks.com>
Tested-by: Hemant Agrawal <hemant.agrawal@nxp.com>
Tested-by: Gowrishankar Muthukrishnan <gowrishankar.m@linux.vnet.ibm.com>
2018-04-11 21:45:55 +02:00
app app/crypto-perf: fix IOVA translation 2018-04-11 02:12:16 +02:00
buildtools buildtools: output build failure reason to stderr 2018-02-08 22:25:37 +01:00
config mem: replace memseg with memseg lists 2018-04-11 19:55:39 +02:00
devtools eal: support strlcpy function 2018-04-04 17:33:08 +02:00
doc mem: replace memseg with memseg lists 2018-04-11 19:55:39 +02:00
drivers memzone: replace memzone array with fbarray 2018-04-11 19:56:30 +02:00
examples examples/ip_pipeline: skip in FreeBSD build 2018-04-10 14:41:01 +02:00
kernel kni: fix build on RHEL 7.5 2018-03-28 00:15:08 +02:00
lib vfio: support memory event callbacks 2018-04-11 21:45:55 +02:00
license license: introduce SPDX identifiers 2018-01-04 22:41:38 +01:00
mk use SPDX tag for RehiveTech copyright files 2018-04-11 01:47:43 +02:00
pkg version: 18.02.0 2018-02-14 19:11:02 +01:00
test memzone: replace memzone array with fbarray 2018-04-11 19:56:30 +02:00
usertools usertools: change to SPDX license identifier 2018-04-11 01:48:12 +02:00
.gitattributes improve git diff 2016-11-13 15:25:12 +01:00
.gitignore devtools: add tags and cscope index generation 2017-04-30 12:57:04 +02:00
GNUmakefile move kernel modules directories 2018-03-21 23:04:21 +01:00
MAINTAINERS maintainers: call out subtree committers 2018-04-11 00:52:51 +02:00
Makefile license: use SPDX tag in root makefile 2018-01-04 22:41:38 +01:00
meson_options.txt test: build app with meson as dpdk-test 2018-01-30 21:58:59 +01:00
meson.build move kernel modules directories 2018-03-21 23:04:21 +01: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