File 65e8ac6f-schema-Don-t-enforce-ordering-of-hostcpu-capabilitie.patch of Package libvirt.33033

From 51e7cee07935f44f8113a542af373e2a5e5a1d9f Mon Sep 17 00:00:00 2001
From: Jim Fehlig <jfehlig@suse.com>
Date: Thu, 11 Aug 2022 16:31:13 -0600
Subject: [PATCH 6/9] schema: Don't enforce ordering of hostcpu capabilities
 elements

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>
(cherry picked from commit 65e8ac6f92e6653d3486f258a34be49de93f8f6a)

 Conflicts:
	docs/schemas/cputypes.rng
---
 docs/schemas/cputypes.rng                | 140 ++++++++++++-----------
 tests/capabilityschemadata/caps-test.xml |   1 +
 2 files changed, 72 insertions(+), 69 deletions(-)

Index: libvirt-8.0.0/docs/schemas/cputypes.rng
===================================================================
--- libvirt-8.0.0.orig/docs/schemas/cputypes.rng
+++ libvirt-8.0.0/docs/schemas/cputypes.rng
@@ -326,77 +326,79 @@
       <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="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"/>
-            </attribute>
-          </optional>
-          <attribute name="size">
-            <ref name="unsignedInt"/>
-          </attribute>
-        </element>
-      </zeroOrMore>
+          </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="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: libvirt-8.0.0/tests/capabilityschemadata/caps-test.xml
===================================================================
--- libvirt-8.0.0.orig/tests/capabilityschemadata/caps-test.xml
+++ libvirt-8.0.0/tests/capabilityschemadata/caps-test.xml
@@ -3,6 +3,7 @@
   <host>
     <cpu>
       <arch>i686</arch>
+      <vendor>Intel</vendor>
       <features>
         <pae/>
         <nonpae/>
openSUSE Build Service is sponsored by