On 9/30/19 8:54 AM, Li Feng wrote:
> The latest qemu has support the vhost-user-scsi and vhost-user-blk backend for
> better performance.
>
> This patch let the libvirt could manage the vhost-user disks.
>
> Usage in xml like this:
> <vhost-user-blk-pci type='unix'>
> <source type='bind' path='/tmp/vhost-blk.sock'>
> <reconnect enabled='yes' timeout='5' />
> </source>
> <queue num='4'/>
> </vhost-user-blk-pci>
This is not so nice XML. We tend to hide these implementation details
from users. We already have <drive/> element which has <driver name=''/>
sub-element. Maybe we can use that somehow? It's better to create the
abstraction at libvirt layer instead of blindly exposing qemu's
features. For instance, recently vhost-user-vga and vhost-user-gpu-pci
was introduced into libvirt and it's hidden under <video/> element:
fc91a182d7cc78fe5ce0e03ef709c834035e0f33 and friends
>
> Li Feng (3):
> qemu: Add vhost-user-scsi/blk support
> vhost-user-scsi/blk: add xml validation check
> qemu: Add multiqueue support for vhost-user-scsi/blk
>
> docs/schemas/domaincommon.rng | 48 ++++++++++
And you want to document every new feature that's added (and also
mention it in docs/news.xml).
> src/conf/device_conf.h | 5 +
> src/conf/domain_conf.c | 93 +++++++++++++++++-
> src/conf/domain_conf.h | 9 ++
> src/qemu/qemu_alias.c | 16 ++++
> src/qemu/qemu_command.c | 105 +++++++++++++++++++++
> src/qemu/qemu_domain.c | 2 +
> .../vhost-user-blk.x86_64-latest.args | 37 ++++++++
> tests/qemuxml2argvdata/vhost-user-blk.xml | 38 ++++++++
> .../vhost-user-scsi.x86_64-latest.args | 37 ++++++++
> tests/qemuxml2argvdata/vhost-user-scsi.xml | 37 ++++++++
> tests/qemuxml2argvtest.c | 3 +
> 12 files changed, 429 insertions(+), 1 deletion(-)
> create mode 100644 tests/qemuxml2argvdata/vhost-user-blk.x86_64-latest.args
> create mode 100644 tests/qemuxml2argvdata/vhost-user-blk.xml
> create mode 100644 tests/qemuxml2argvdata/vhost-user-scsi.x86_64-latest.args
> create mode 100644 tests/qemuxml2argvdata/vhost-user-scsi.xml
>
I haven't looked at any code, because we need to figure out XML design
first.
Michal
--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list