Spdk/test/unit/lib
Darek Stojaczyk 0a6ad9b02e vhost: install external msg handling hooks to rte_vhost
DPDK 19.05+ gives us an ability to pre or post-process
any single vhost-user message. The user can either perform
additional actions upon some generic events, or can
implement handling for brand new message types that
rte_vhost doesn't even know about.

In order to smoothly switch to the upstream rte_vhost
and drop our internal copy, we introduce an SPDK wrapper
function to register SPDK-specific message handlers. For
DPDK 19.05+ this will use the new rte_vhost API to
register those message handlers, and for older DPDKs
this function simply won't do anything - as w assume the
internal rte_copy already contains all the necessary
changes and does not need any "external" hooks.

For now we use the message handlers to stop the vhost
device and wait for any pending DMA ops before letting
rte_vhost to process the SET_MEM_TABLE message and unmap
the current shared memory.

Change-Id: Ic0fefa9174254627cb3fc0ed30ab1e54be4dd654
Signed-off-by: Darek Stojaczyk <dariusz.stojaczyk@intel.com>
Reviewed-on: https://review.gerrithub.io/c/spdk/spdk/+/446085
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Ben Walker <benjamin.walker@intel.com>
Reviewed-by: Changpeng Liu <changpeng.liu@intel.com>
2019-03-13 14:26:20 +00:00
..
bdev test/bdev/raid: use strip_size_kb 2019-03-04 08:44:44 +00:00
blob thread: Optionally allow the current time to be passed to 2019-02-11 22:58:45 +00:00
blobfs thread: Optionally allow the current time to be passed to 2019-02-11 22:58:45 +00:00
event event: No longer require event in spdk_subsystem_fini 2019-03-08 03:21:45 +00:00
ftl test/unit/ftl: Fix assert in write pointer test 2019-02-26 07:51:20 +00:00
ioat test/unit: remove duplicate mk/spdk.common.mk includes 2019-02-11 09:30:27 +00:00
iscsi iscsi: Add a function to read PDU data from socket by spdk_sock_readv 2019-03-08 01:21:26 +00:00
json json: add utilities function enabling itaration over JSON object 2018-10-18 16:07:37 +00:00
jsonrpc jsonrpc: fix received JSON buffer overwrite 2019-01-10 14:31:37 +00:00
log test/unit: remove duplicate mk/spdk.common.mk includes 2019-02-11 09:30:27 +00:00
lvol test/unit: remove duplicate mk/spdk.common.mk includes 2019-02-11 09:30:27 +00:00
nvme nvme: use asynchronous probe API in spdk_nvme_probe() 2019-03-08 04:42:21 +00:00
nvmf nvmf: solve the memory leak issue caused by subsystem listerner port 2019-03-08 20:33:33 +00:00
reduce test/unit: remove duplicate mk/spdk.common.mk includes 2019-02-11 09:30:27 +00:00
scsi scsi: Add an API to return DIF context of bdev and CDB 2019-03-08 01:21:26 +00:00
sock sock: Add spdk_sock_readv(sock, iov, iovcnt) 2019-03-08 01:21:26 +00:00
thread test/unit: remove duplicate mk/spdk.common.mk includes 2019-02-11 09:30:27 +00:00
util dif: Insert DIF into newly read data block by stream fashion 2019-03-13 01:40:02 +00:00
vhost vhost: install external msg handling hooks to rte_vhost 2019-03-13 14:26:20 +00:00
json_mock.c subsystem: add per module configuration dump 2018-03-23 02:47:40 -04:00
Makefile ftl: Added unit tests for FTL library 2019-01-22 23:22:16 +00:00