]> xenbits.xensource.com Git - libvirt.git/commitdiff
conf: domcaps: Add 'backingStoreInput' domain capability
authorPeter Krempa <pkrempa@redhat.com>
Wed, 30 Oct 2019 15:54:56 +0000 (16:54 +0100)
committerPeter Krempa <pkrempa@redhat.com>
Fri, 22 Nov 2019 11:51:27 +0000 (12:51 +0100)
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
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@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
docs/formatdomaincaps.html.in
docs/schemas/domaincaps.rng
src/conf/domain_capabilities.c
src/conf/domain_capabilities.h

index 0488d986eeda721e9655d19f51a11775cd7bbe78..0bafb677054237d2ec79b60a171cf22a35169893 100644 (file)
     &lt;/gic&gt;
     &lt;vmcoreinfo supported='yes'/&gt;
     &lt;genid supported='yes'/&gt;
+    &lt;backingStoreInput supported='yes'/&gt;
     &lt;sev&gt;
       &lt;cbitpos&gt;47&lt;/cbitpos&gt;
       &lt;reduced-phys-bits&gt;1&lt;/reduced-phys-bits&gt;
 
     <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 &lt;backingStore&gt;
+    elements configured for a &lt;disk&gt; when booting the guest, hotplugging
+    the disk to a running guest, or similar.
+    </p>
+
     <h4><a id="elementsSEV">SEV capabilities</a></h4>
 
     <p>AMD Secure Encrypted Virtualization (SEV) capabilities are exposed under
index 3525c0eeef73decbed33c7c279cc4b9d4f3559e9..88b545ec2a6e5ab6421aa8e6ecab5c611fd465ea 100644 (file)
       <optional>
         <ref name='vmgenid'/>
       </optional>
+      <optional>
+        <ref name='backingStoreInput'/>
+      </optional>
       <optional>
         <ref name='sev'/>
       </optional>
     </element>
   </define>
 
+  <define name='backingStoreInput'>
+    <element name='backingStoreInput'>
+      <ref name='supported'/>
+    </element>
+  </define>
+
   <define name='sev'>
     <element name='sev'>
       <ref name='supported'/>
index fa27e95e1b3f5588a58a688834ba134fbd16f41f..ca208f2340fda0d26d0145d3a65bd9c776d1f00e 100644 (file)
@@ -40,6 +40,7 @@ VIR_ENUM_IMPL(virDomainCapsFeature,
               "iothreads",
               "vmcoreinfo",
               "genid",
+              "backingStoreInput",
 );
 
 static virClassPtr virDomainCapsClass;
index c8eeb035ac82ea7dce58dbf8e570d38461c5f665..4ec9fe006c1939db08fa28d7007d77ee7bc4049e 100644 (file)
@@ -162,6 +162,7 @@ typedef enum {
     VIR_DOMAIN_CAPS_FEATURE_IOTHREADS = 0,
     VIR_DOMAIN_CAPS_FEATURE_VMCOREINFO,
     VIR_DOMAIN_CAPS_FEATURE_GENID,
+    VIR_DOMAIN_CAPS_FEATURE_BACKING_STORE_INPUT,
 
     VIR_DOMAIN_CAPS_FEATURE_LAST
 } virDomainCapsFeature;