Spdk/lib/virtio
Changpeng Liu 295e54d144 virtio/vfio_user: add virtio_blk device support
Add vfio-user transport support based on existing virtio client
library.

Test steps using bdevperf:

Start `spdk_tgt` with created virtio_blk device:
1. build/bin/spdk_tgt
2. scripts/rpc.py bdev_malloc_create -b malloc0 $((512)) 512
3. scripts/rpc.py vfu_virtio_create_blk_endpoint vfu.0 --bdev-name malloc0 \
                                                 --cpumask=0x1 --num-queues=2 \
                                                 --qsize=256 --packed-ring

Start `bdevperf`:
1. test/bdev/bdevperf/bdevperf -r /var/tmp/spdk.sock.1 -g -s 2048 -q 128 -o 4096 \
                               -w randread -t 30 -m 0x2
2. scripts/rpc.py -s /var/tmp/spdk.sock.1 bdev_virtio_attach_controller --dev-type blk \
                  --trtype vfio-user --traddr vfu.0 VirtioBlk0
3. test/bdev/bdevperf/bdevperf.py -s /var/tmp/spdk.sock.1 perform_tests

Change-Id: I368c4becebbca57328a25fc750e41c353420e481
Signed-off-by: Changpeng Liu <changpeng.liu@intel.com>
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/13896
Community-CI: Mellanox Build Bot
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com>
Reviewed-by: Ben Walker <benjamin.walker@intel.com>
2022-09-29 19:42:56 +00:00
..
Makefile virtio/vfio_user: add virtio_blk device support 2022-09-29 19:42:56 +00:00
spdk_virtio.map virtio/vfio_user: add virtio_blk device support 2022-09-29 19:42:56 +00:00
virtio_pci.c Replace most BSD 3-clause license text with SPDX identifier. 2022-06-09 07:35:12 +00:00
virtio_vfio_user.c virtio/vfio_user: add virtio_blk device support 2022-09-29 19:42:56 +00:00
virtio_vhost_user.c virtio: assert and ERRLOG for virtio-user dynamic mem allocations 2022-09-09 13:06:15 +00:00
virtio.c module/bdev_virtio_scsi: use the correct num_queues value 2022-08-04 11:24:40 +00:00