]> xenbits.xensource.com Git - libvirt.git/commitdiff
schema: Don't enforce ordering of hostcpu capabilities elements
authorJim Fehlig <jfehlig@suse.com>
Thu, 11 Aug 2022 22:31:13 +0000 (16:31 -0600)
committerJim Fehlig <jfehlig@suse.com>
Mon, 15 Aug 2022 15:32:59 +0000 (09:32 -0600)
The change to caps-test.xml demonstrates the need for the change to
cputypes.rng.

Signed-off-by: Jim Fehlig <jfehlig@suse.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
src/conf/schemas/cputypes.rng
tests/capabilityschemadata/caps-test.xml

index 6fbb069661c1f12538b89d76a3c6056577652453..219acaef143e47d185f46be7f8d5a8d3d6e1022d 100644 (file)
       <element name="arch">
         <ref name="archnames"/>
       </element>
-      <optional>
-        <element name="features">
-          <optional>
-            <element name="pae"><empty/></element>
-          </optional>
-          <optional>
-            <element name="nonpae"><empty/></element>
-          </optional>
-          <optional>
-            <element name="vmx"><empty/></element>
-          </optional>
-          <optional>
-            <element name="svm"><empty/></element>
-          </optional>
-        </element>
-      </optional>
-      <optional>
-        <element name="model">
-          <text/>
-        </element>
-      </optional>
-      <optional>
-        <element name="vendor">
-          <text/>
-        </element>
-      </optional>
-      <optional>
-        <element name="microcode">
-          <attribute name="version">
-            <ref name="positiveInteger"/>
-          </attribute>
-        </element>
-      </optional>
-      <optional>
-        <element name="signature">
-          <attribute name="family">
-            <ref name="positiveInteger"/>
-          </attribute>
-          <attribute name="model">
-            <ref name="unsignedInt"/>
-          </attribute>
-          <attribute name="stepping">
-            <ref name="unsignedInt"/>
-          </attribute>
-        </element>
-      </optional>
-      <optional>
-        <element name="counter">
-          <attribute name="name">
+      <interleave>
+        <optional>
+          <element name="features">
+            <optional>
+              <element name="pae"><empty/></element>
+            </optional>
+            <optional>
+              <element name="nonpae"><empty/></element>
+            </optional>
+            <optional>
+              <element name="vmx"><empty/></element>
+            </optional>
+            <optional>
+              <element name="svm"><empty/></element>
+            </optional>
+          </element>
+        </optional>
+        <optional>
+          <element name="model">
             <text/>
-          </attribute>
-          <attribute name="frequency">
-            <ref name="positiveInteger"/>
-          </attribute>
-          <attribute name="scaling">
-            <ref name="virYesNo"/>
-          </attribute>
-        </element>
-      </optional>
-      <optional>
-        <ref name="cpuTopology"/>
-      </optional>
-      <zeroOrMore>
-        <element name="feature">
-          <attribute name="name">
-            <data type="string">
-              <param name="pattern">[a-zA-Z0-9\-_]+</param>
-            </data>
-          </attribute>
-          <empty/>
-        </element>
-      </zeroOrMore>
-      <zeroOrMore>
-        <element name="pages">
-          <optional>
-            <attribute name="unit">
-              <ref name="unit"/>
+          </element>
+        </optional>
+        <optional>
+          <element name="vendor">
+            <text/>
+          </element>
+        </optional>
+        <optional>
+          <element name="microcode">
+            <attribute name="version">
+              <ref name="positiveInteger"/>
             </attribute>
-          </optional>
-          <attribute name="size">
-            <ref name="unsignedInt"/>
-          </attribute>
-        </element>
-      </zeroOrMore>
+          </element>
+        </optional>
+        <optional>
+          <element name="signature">
+            <attribute name="family">
+              <ref name="positiveInteger"/>
+            </attribute>
+            <attribute name="model">
+              <ref name="unsignedInt"/>
+            </attribute>
+            <attribute name="stepping">
+              <ref name="unsignedInt"/>
+            </attribute>
+          </element>
+        </optional>
+        <optional>
+          <element name="counter">
+            <attribute name="name">
+              <text/>
+            </attribute>
+            <attribute name="frequency">
+              <ref name="positiveInteger"/>
+            </attribute>
+            <attribute name="scaling">
+              <ref name="virYesNo"/>
+            </attribute>
+          </element>
+        </optional>
+        <optional>
+          <ref name="cpuTopology"/>
+        </optional>
+        <zeroOrMore>
+          <element name="feature">
+            <attribute name="name">
+              <data type="string">
+                <param name="pattern">[a-zA-Z0-9\-_]+</param>
+              </data>
+            </attribute>
+            <empty/>
+          </element>
+        </zeroOrMore>
+        <zeroOrMore>
+          <element name="pages">
+            <optional>
+              <attribute name="unit">
+                <ref name="unit"/>
+              </attribute>
+            </optional>
+            <attribute name="size">
+              <ref name="unsignedInt"/>
+            </attribute>
+          </element>
+        </zeroOrMore>
+      </interleave>
     </element>
   </define>
 
index da199611ea52f3e4f0b65d3b672d7a30b45163d7..44a390a5b6d0ea830788b74a4842d2cb831297f4 100644 (file)
@@ -3,6 +3,7 @@
   <host>
     <cpu>
       <arch>i686</arch>
+      <vendor>Intel</vendor>
       <features>
         <pae/>
         <nonpae/>