[libvirt] [PATCH 3/6] conf: Add <disk model='virtio-{non-}transitional'/>

Daniel P. Berrangé berrange at redhat.com
Tue Jan 15 16:51:39 UTC 2019


On Sun, Jan 13, 2019 at 06:12:05PM -0500, Cole Robinson wrote:
> <disk> devices lack the model= attribute which is used by
> most other device types. bus= mostly acts as one, but it
> serves other purposes too like determing what target=
> prefix to use, and for matching against controller type=
> values.
> 
> Extending bus= to handle additional virtio transitional
> devices will complicate apps lives, and it isn't a clean
> mapping anyways. So let's bite the bullet and add a new
> <disk model=X/> attribute, and wire up common handling
> for virtio-{non-}transitional
> 
> Signed-off-by: Cole Robinson <crobinso at redhat.com>
> ---
>  docs/formatdomain.html.in                     |  8 ++++
>  docs/schemas/domaincommon.rng                 |  8 ++++
>  src/conf/domain_conf.c                        | 28 +++++++++++++
>  src/conf/domain_conf.h                        | 10 +++++
>  src/libvirt_private.syms                      |  2 +
>  ...virtio-non-transitional.x86_64-latest.args | 34 +++++++++++++++
>  .../virtio-non-transitional.xml               | 26 ++++++++++++
>  .../virtio-transitional.x86_64-latest.args    | 34 +++++++++++++++
>  .../qemuxml2argvdata/virtio-transitional.xml  | 26 ++++++++++++
>  tests/qemuxml2argvtest.c                      |  3 ++
>  .../virtio-non-transitional.xml               | 42 +++++++++++++++++++
>  .../virtio-transitional.xml                   | 42 +++++++++++++++++++
>  tests/qemuxml2xmltest.c                       |  3 ++
>  13 files changed, 266 insertions(+)
>  create mode 100644 tests/qemuxml2argvdata/virtio-non-transitional.x86_64-latest.args
>  create mode 100644 tests/qemuxml2argvdata/virtio-non-transitional.xml
>  create mode 100644 tests/qemuxml2argvdata/virtio-transitional.x86_64-latest.args
>  create mode 100644 tests/qemuxml2argvdata/virtio-transitional.xml
>  create mode 100644 tests/qemuxml2xmloutdata/virtio-non-transitional.xml
>  create mode 100644 tests/qemuxml2xmloutdata/virtio-transitional.xml
> 
> diff --git a/docs/formatdomain.html.in b/docs/formatdomain.html.in
> index 7f07bb7f55..5220e19417 100644
> --- a/docs/formatdomain.html.in
> +++ b/docs/formatdomain.html.in
> @@ -2922,6 +2922,14 @@
>              <span class="since">Since 0.1.4</span>
>              </p>
>              </dd>
> +          <dt><code>model</code></dt>
> +            <dd>
> +            Indicates the emulated device model of the disk. Typically
> +            this is indicated solely by the <code>bus</code> property but
> +            for <code>bus</code> "virtio" the model can be specified further
> +            with "virtio-transitional" or "virtio-non-transitional"
> +            <span class="since">Since 5.1.0</span>

We should note that this is *only* valid when using a <adress type=pci>
because  the virtio-*ccw and virtio-*mmio don't support these.

In fact I wonder if that's good a reason to call them

  "virtio-pci-transitional" and "virtio-pci-non-transitional"



Regards,
Daniel
-- 
|: https://berrange.com      -o-    https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org         -o-            https://fstop138.berrange.com :|
|: https://entangle-photo.org    -o-    https://www.instagram.com/dberrange :|




More information about the libvir-list mailing list