On 04/02/2018 01:46 PM, Zhihong Wang wrote:
This patch set introduces support for selective datapath in DPDK vhost-user lib. vDPA stands for vhost Data Path Acceleration. The idea is to support virtio ring compatible devices to serve virtio driver directly to enable datapath acceleration. A set of device ops is defined for device specific operations: a. get_queue_num: Called to get supported queue number of the device. b. get_features: Called to get supported features of the device. c. get_protocol_features: Called to get supported protocol features of the device. d. dev_conf: Called to configure the actual device when the virtio device becomes ready. e. dev_close: Called to close the actual device when the virtio device is stopped. f. set_vring_state: Called to change the state of the vring in the actual device when vring state changes. g. set_features: Called to set the negotiated features to device. h. migration_done: Called to allow the device to response to RARP sending. i. get_vfio_group_fd: Called to get the VFIO group fd of the device. j. get_vfio_device_fd: Called to get the VFIO device fd of the device. k. get_notify_area: Called to get the notify area info of the queue. Signed-off-by: Zhihong Wang <zhihong.w...@intel.com> --- Changes in v5: 1. Rename the vDPA device ops to follow convention. 2. Improve sanity check. --- Changes in v4: 1. Remove the "engine" concept in the lib. --- Changes in v2: 1. Add VFIO related vDPA device ops. lib/librte_vhost/Makefile | 4 +- lib/librte_vhost/rte_vdpa.h | 87 +++++++++++++++++++++++++ lib/librte_vhost/rte_vhost_version.map | 7 ++ lib/librte_vhost/vdpa.c | 115 +++++++++++++++++++++++++++++++++ 4 files changed, 211 insertions(+), 2 deletions(-) create mode 100644 lib/librte_vhost/rte_vdpa.h create mode 100644 lib/librte_vhost/vdpa.c
With the fix you suggested: Reviewed-by: Maxime Coquelin <maxime.coque...@redhat.com> Thanks! Maxime