Spdk/lib/vhost
Tomasz Zawadzki b727e804d6 vhost: add virtio_blk abstraction
This patch adds virtio_blk abstraction for custom transports,
with the 'vhost_user_blk' first one being used.

Added spdk_virtio_blk_transport_ops describing the nessecary
callbacks to be implemented by each transport.
Please use SPDK_VIRTIO_BLK_TRANSPORT_REGISTER to register the transport.
Transports can use virtio_blk_process_request() to process the
incoming I/O from their queues.

virtio_blk_create_transport RPC was added to create one of the
registered transports, possibly with custom JSON arguments.

Added 'transport' argument to vhost_create_blk_controller RPC,
to specify which transport should create the controller.
By default the vhost_user_blk transport is used.

Signed-off-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com>
Change-Id: Ic9d93a6e0f483796eb56b7174a678e41a6ea4808
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/9540
Reviewed-by: Jim Harris <james.r.harris@intel.com>
Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com>
Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com>
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
2022-05-23 17:31:16 +00:00
..
Makefile so_ver: increase all major versions 2022-01-31 15:29:56 +00:00
rte_vhost_user.c event/vhost: separate vhost subsystem to scsi and blk 2022-05-20 09:20:07 +00:00
spdk_vhost.map event/vhost: separate vhost subsystem to scsi and blk 2022-05-20 09:20:07 +00:00
vhost_blk.c vhost: add virtio_blk abstraction 2022-05-23 17:31:16 +00:00
vhost_internal.h vhost: add virtio_blk abstraction 2022-05-23 17:31:16 +00:00
vhost_rpc.c vhost: add virtio_blk abstraction 2022-05-23 17:31:16 +00:00
vhost_scsi.c vhost: add virtio_blk abstraction 2022-05-23 17:31:16 +00:00
vhost.c vhost: add virtio_blk abstraction 2022-05-23 17:31:16 +00:00