Since vhost-user-scsi device has been part of Qemu, many users are still
using old virtio_blk device in Guest OS, compared with vhost-user-scsi,
vhost-user-blk can get better performance, because eliminate one SCSI_MOD
kernel module. This patch provides another option for uses to implement
their own I/O stacks.
Due to virtio_blk protocol limitation, Qemu virtio_blk frontend device can't
get Capacity/block size parameters through protocol, users must pass them
when started Qemu. Of course, we can extend exist vhost user messages to add
2 more messages(get_block_config/set_block_config) for vhost-user-blk device.
But for this patch, we choose append parameters to Qemu vhost-user-blk as the
solution.
Changpeng Liu (2):
vhost-user-blk: introduce a new vhost-user-blk host device
vhost-user-blk: introduce a vhost-user-blk sample application
.gitignore | 1 +
Makefile | 3 +
Makefile.objs | 2 +
configure | 11 +
contrib/vhost-user-blk/Makefile.objs | 1 +
contrib/vhost-user-blk/vhost-user-blk.c | 695 ++++++++++++++++++++++++++++++++
hw/block/Makefile.objs | 3 +
hw/block/vhost-user-blk.c | 352 ++++++++++++++++
hw/virtio/virtio-pci.c | 55 +++
hw/virtio/virtio-pci.h | 18 +
include/hw/virtio/vhost-user-blk.h | 46 +++
11 files changed, 1187 insertions(+)
create mode 100644 contrib/vhost-user-blk/Makefile.objs
create mode 100644 contrib/vhost-user-blk/vhost-user-blk.c
create mode 100644 hw/block/vhost-user-blk.c
create mode 100644 include/hw/virtio/vhost-user-blk.h
--
1.9.3