numam-spdk/lib/vhost
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
..
rte_vhost rte_vhost: introduce get/set vring base idx APIs 2019-02-27 01:43:16 +00:00
Makefile vhost: install external msg handling hooks to rte_vhost 2019-03-13 14:26:20 +00:00
rte_vhost_compat.c vhost: install external msg handling hooks to rte_vhost 2019-03-13 14:26:20 +00:00
vhost_blk.c vhost: remove vhost external events 2019-02-06 19:04:21 +00:00
vhost_internal.h vhost: install external msg handling hooks to rte_vhost 2019-03-13 14:26:20 +00:00
vhost_nvme.c vhost/nvme: fix vhost-nvme target with session feature 2019-01-29 06:47:18 +00:00
vhost_rpc.c configure: add option not to use the internal rte_vhost copy 2019-03-13 14:26:20 +00:00
vhost_scsi.c vhost-scsi: use spdk_vhost_scsi_dev_get_tgt while dumping JSON config 2019-03-07 15:53:26 +00:00
vhost.c vhost: install external msg handling hooks to rte_vhost 2019-03-13 14:26:20 +00:00