[libvirt] [PATCH 1/8] conf: domcaps: Add 'backingStoreInput' domain capability

Peter Krempa pkrempa at redhat.com
Fri Nov 22 09:18:02 UTC 2019


On Thu, Nov 21, 2019 at 18:19:55 +0000, Daniel Berrange wrote:
> On Mon, Nov 18, 2019 at 06:02:01PM +0100, Peter Krempa wrote:
> > Historically we've only supported the <backingStore> as an output-only
> > element for domain disks. The documentation states that it may become
> > supported on input. To allow management apps detectin once that happens
> 
> s/detectin/to detect/
> 
> > add a domain capability which will be asserted if the hypervisor driver
> > will be able to obey the <backingStore> as configured on input.
> > 
> > Signed-off-by: Peter Krempa <pkrempa at redhat.com>
> > ---
> >  docs/formatdomaincaps.html.in                     | 7 +++++++
> >  docs/schemas/domaincaps.rng                       | 9 +++++++++
> >  src/conf/domain_capabilities.c                    | 1 +
> >  src/conf/domain_capabilities.h                    | 1 +
> >  tests/domaincapsdata/libxl-xenfv.xml              | 1 +
> >  tests/domaincapsdata/libxl-xenpv.xml              | 1 +
> >  tests/domaincapsdata/qemu_1.5.3-q35.x86_64.xml    | 1 +
> >  tests/domaincapsdata/qemu_1.5.3-tcg.x86_64.xml    | 1 +
> >  tests/domaincapsdata/qemu_1.5.3.x86_64.xml        | 1 +
> >  tests/domaincapsdata/qemu_1.6.0-q35.x86_64.xml    | 1 +
> >  tests/domaincapsdata/qemu_1.6.0-tcg.x86_64.xml    | 1 +
> >  tests/domaincapsdata/qemu_1.6.0.x86_64.xml        | 1 +
> >  tests/domaincapsdata/qemu_1.7.0-q35.x86_64.xml    | 1 +
> >  tests/domaincapsdata/qemu_1.7.0-tcg.x86_64.xml    | 1 +
> >  tests/domaincapsdata/qemu_1.7.0.x86_64.xml        | 1 +
> >  tests/domaincapsdata/qemu_2.1.1-q35.x86_64.xml    | 1 +
> >  tests/domaincapsdata/qemu_2.1.1-tcg.x86_64.xml    | 1 +
> >  tests/domaincapsdata/qemu_2.1.1.x86_64.xml        | 1 +
> >  tests/domaincapsdata/qemu_2.10.0-q35.x86_64.xml   | 1 +
> >  tests/domaincapsdata/qemu_2.10.0-tcg.x86_64.xml   | 1 +
> >  tests/domaincapsdata/qemu_2.10.0-virt.aarch64.xml | 1 +
> >  tests/domaincapsdata/qemu_2.10.0.aarch64.xml      | 1 +
> >  tests/domaincapsdata/qemu_2.10.0.ppc64.xml        | 1 +
> >  tests/domaincapsdata/qemu_2.10.0.s390x.xml        | 1 +
> >  tests/domaincapsdata/qemu_2.10.0.x86_64.xml       | 1 +
> >  tests/domaincapsdata/qemu_2.11.0-q35.x86_64.xml   | 1 +
> >  tests/domaincapsdata/qemu_2.11.0-tcg.x86_64.xml   | 1 +
> >  tests/domaincapsdata/qemu_2.11.0.s390x.xml        | 1 +
> >  tests/domaincapsdata/qemu_2.11.0.x86_64.xml       | 1 +
> >  tests/domaincapsdata/qemu_2.12.0-q35.x86_64.xml   | 1 +
> >  tests/domaincapsdata/qemu_2.12.0-tcg.x86_64.xml   | 1 +
> >  tests/domaincapsdata/qemu_2.12.0-virt.aarch64.xml | 1 +
> >  tests/domaincapsdata/qemu_2.12.0.aarch64.xml      | 1 +
> >  tests/domaincapsdata/qemu_2.12.0.ppc64.xml        | 1 +
> >  tests/domaincapsdata/qemu_2.12.0.s390x.xml        | 1 +
> >  tests/domaincapsdata/qemu_2.12.0.x86_64.xml       | 1 +
> >  tests/domaincapsdata/qemu_2.4.0-q35.x86_64.xml    | 1 +
> >  tests/domaincapsdata/qemu_2.4.0-tcg.x86_64.xml    | 1 +
> >  tests/domaincapsdata/qemu_2.4.0.x86_64.xml        | 1 +
> >  tests/domaincapsdata/qemu_2.5.0-q35.x86_64.xml    | 1 +
> >  tests/domaincapsdata/qemu_2.5.0-tcg.x86_64.xml    | 1 +
> >  tests/domaincapsdata/qemu_2.5.0.x86_64.xml        | 1 +
> >  tests/domaincapsdata/qemu_2.6.0-q35.x86_64.xml    | 1 +
> >  tests/domaincapsdata/qemu_2.6.0-tcg.x86_64.xml    | 1 +
> >  tests/domaincapsdata/qemu_2.6.0-virt.aarch64.xml  | 1 +
> >  tests/domaincapsdata/qemu_2.6.0.aarch64.xml       | 1 +
> >  tests/domaincapsdata/qemu_2.6.0.ppc64.xml         | 1 +
> >  tests/domaincapsdata/qemu_2.6.0.x86_64.xml        | 1 +
> >  tests/domaincapsdata/qemu_2.7.0-q35.x86_64.xml    | 1 +
> >  tests/domaincapsdata/qemu_2.7.0-tcg.x86_64.xml    | 1 +
> >  tests/domaincapsdata/qemu_2.7.0.s390x.xml         | 1 +
> >  tests/domaincapsdata/qemu_2.7.0.x86_64.xml        | 1 +
> >  tests/domaincapsdata/qemu_2.8.0-q35.x86_64.xml    | 1 +
> >  tests/domaincapsdata/qemu_2.8.0-tcg.x86_64.xml    | 1 +
> >  tests/domaincapsdata/qemu_2.8.0.s390x.xml         | 1 +
> >  tests/domaincapsdata/qemu_2.8.0.x86_64.xml        | 1 +
> >  tests/domaincapsdata/qemu_2.9.0-q35.x86_64.xml    | 1 +
> >  tests/domaincapsdata/qemu_2.9.0-tcg.x86_64.xml    | 1 +
> >  tests/domaincapsdata/qemu_2.9.0.ppc64.xml         | 1 +
> >  tests/domaincapsdata/qemu_2.9.0.s390x.xml         | 1 +
> >  tests/domaincapsdata/qemu_2.9.0.x86_64.xml        | 1 +
> >  tests/domaincapsdata/qemu_3.0.0-q35.x86_64.xml    | 1 +
> >  tests/domaincapsdata/qemu_3.0.0-tcg.x86_64.xml    | 1 +
> >  tests/domaincapsdata/qemu_3.0.0.ppc64.xml         | 1 +
> >  tests/domaincapsdata/qemu_3.0.0.s390x.xml         | 1 +
> >  tests/domaincapsdata/qemu_3.0.0.x86_64.xml        | 1 +
> >  tests/domaincapsdata/qemu_3.1.0-q35.x86_64.xml    | 1 +
> >  tests/domaincapsdata/qemu_3.1.0-tcg.x86_64.xml    | 1 +
> >  tests/domaincapsdata/qemu_3.1.0.ppc64.xml         | 1 +
> >  tests/domaincapsdata/qemu_3.1.0.x86_64.xml        | 1 +
> >  tests/domaincapsdata/qemu_4.0.0-q35.x86_64.xml    | 1 +
> >  tests/domaincapsdata/qemu_4.0.0-tcg.x86_64.xml    | 1 +
> >  tests/domaincapsdata/qemu_4.0.0-virt.aarch64.xml  | 1 +
> >  tests/domaincapsdata/qemu_4.0.0.aarch64.xml       | 1 +
> >  tests/domaincapsdata/qemu_4.0.0.ppc64.xml         | 1 +
> >  tests/domaincapsdata/qemu_4.0.0.s390x.xml         | 1 +
> >  tests/domaincapsdata/qemu_4.0.0.x86_64.xml        | 1 +
> >  tests/domaincapsdata/qemu_4.1.0-q35.x86_64.xml    | 1 +
> >  tests/domaincapsdata/qemu_4.1.0-tcg.x86_64.xml    | 1 +
> >  tests/domaincapsdata/qemu_4.1.0.x86_64.xml        | 1 +
> >  tests/domaincapsdata/qemu_4.2.0-q35.x86_64.xml    | 1 +
> >  tests/domaincapsdata/qemu_4.2.0-tcg.x86_64.xml    | 1 +
> >  tests/domaincapsdata/qemu_4.2.0-virt.aarch64.xml  | 1 +
> >  tests/domaincapsdata/qemu_4.2.0.aarch64.xml       | 1 +
> >  tests/domaincapsdata/qemu_4.2.0.ppc64.xml         | 1 +
> >  tests/domaincapsdata/qemu_4.2.0.x86_64.xml        | 1 +
> >  86 files changed, 100 insertions(+)
> 
> Reviewed-by: Daniel P. Berrangé <berrange at redhat.com>
> 
> > @@ -552,6 +553,12 @@
> > 
> >      <p>Reports whether the genid feature can be used by the domain.</p>
> > 
> > +    <h4><a id="featureBackingStoreInput">backingStoreInput</a></h4>
> > +
> > +    <p>Reports whether the hypervisor will obey the <backingStore>
> > +    elements configured for a <disk> on input during startup of the domain.
> > +    </p>
> 
> "during startup of the domain" looks suspect to me. Do we not
> obey backing store any time we process the XML, even for a inactive
> guest, or when hotplugging into a running guest ?

I wanted to somehow mention that while the XML may have the elements
stored they are ignored (or not if the feature is available) when we
process the definition. Yet the elements are still there so the 'on
input' wording which we use in the domain definition also seemed a bit
fishy though.

I can drop the 'during the startup' part so that it's at least the same
between the two docs sections, but I don't have a better suggestion how
to word it.

> For the actual change though

After an recent patch this patch doesn't change the domain caps data any
more, but those are changed in the later patch that implements the flag
in the qemu driver.

That change should be straightforward/trivial enough though so I'll
retain the r-b if you don't object.

> Reviewed-by: Daniel P. Berrangé <berrange at redhat.com>
> 
> 
> 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 :|
> 
> --
> libvir-list mailing list
> libvir-list at redhat.com
> https://www.redhat.com/mailman/listinfo/libvir-list
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL: <http://listman.redhat.com/archives/libvir-list/attachments/20191122/bc03acac/attachment-0001.sig>


More information about the libvir-list mailing list