[libvirt] [PATCH 0/3] Add vhost-user-scsi/blk support

Li Feng posted 3 patches 4 years, 6 months ago
Test syntax-check passed
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/libvirt tags/patchew/20190930065422.59782-1-fengli@smartx.com
docs/schemas/domaincommon.rng                      |  48 ++++++++++
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
[libvirt] [PATCH 0/3] Add vhost-user-scsi/blk support
Posted by Li Feng 4 years, 6 months ago
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>

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 ++++++++++
 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

-- 
2.11.0


-- 
The SmartX email address is only for business purpose. Any sent message 
that is not related to the business is not authorized or permitted by 
SmartX.
本邮箱为北京志凌海纳科技有限公司(SmartX)工作邮箱. 如本邮箱发出的邮件与工作无关,该邮件未得到本公司任何的明示或默示的授权.



--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list
Re: [libvirt] [PATCH 0/3] Add vhost-user-scsi/blk support
Posted by Michal Privoznik 4 years, 6 months ago
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