]> git.ipfire.org Git - thirdparty/libvirt.git/commitdiff
schemas: Update nodedev schema to match reality
authorMartin Kletzander <mkletzan@redhat.com>
Sun, 3 Apr 2016 18:57:58 +0000 (20:57 +0200)
committerMartin Kletzander <mkletzan@redhat.com>
Mon, 2 May 2016 13:46:23 +0000 (15:46 +0200)
There were few things done in the nodedev code but we were lacking tests
for it.  And because of that we missed that the schema was not updated
either.  Fix the schema and add various test files to show the schema
is correct.

Signed-off-by: Martin Kletzander <mkletzan@redhat.com>
docs/schemas/nodedev.rng
tests/nodedevschemadata/pci_0000_02_10_7_sriov.xml [new file with mode: 0644]
tests/nodedevschemadata/pci_0000_02_10_7_sriov_pf_vfs_all.xml [new file with mode: 0644]
tests/nodedevschemadata/pci_0000_02_10_7_sriov_pf_vfs_all_header_type.xml [new file with mode: 0644]
tests/nodedevschemadata/pci_0000_02_10_7_sriov_vfs.xml [new file with mode: 0644]
tests/nodedevschemadata/pci_0000_02_10_7_sriov_zero_vfs_max_count.xml [new file with mode: 0644]

index 6b9b54298b2175d79816d3393cbd6a5c6998662f..93a88d883056bc18cad14becba7837dfd1248f99 100644 (file)
           <value>virt_functions</value>
         </attribute>
         <optional>
-          <ref name='address'/>
+          <attribute name='maxCount'>
+            <ref name='unsignedInt'/>
+          </attribute>
         </optional>
+        <zeroOrMore>
+          <ref name='address'/>
+        </zeroOrMore>
       </element>
     </optional>
 
diff --git a/tests/nodedevschemadata/pci_0000_02_10_7_sriov.xml b/tests/nodedevschemadata/pci_0000_02_10_7_sriov.xml
new file mode 100644 (file)
index 0000000..8f243b4
--- /dev/null
@@ -0,0 +1,23 @@
+<device>
+  <name>pci_0000_02_10_7</name>
+  <parent>pci_0000_00_04_0</parent>
+  <capability type='pci'>
+    <domain>0</domain>
+    <bus>2</bus>
+    <slot>16</slot>
+    <function>7</function>
+    <product id='0x10ca'>82576 Virtual Function</product>
+    <vendor id='0x8086'>Intel Corporation</vendor>
+    <capability type='phys_function'>
+      <address domain='0x0000' bus='0x02' slot='0x00' function='0x1'/>
+    </capability>
+    <iommuGroup number='31'>
+      <address domain='0x0000' bus='0x02' slot='0x10' function='0x7'/>
+    </iommuGroup>
+    <numa node='0'/>
+    <pci-express>
+      <link validity='cap' port='0' speed='2.5' width='4'/>
+      <link validity='sta' width='0'/>
+    </pci-express>
+  </capability>
+</device>
diff --git a/tests/nodedevschemadata/pci_0000_02_10_7_sriov_pf_vfs_all.xml b/tests/nodedevschemadata/pci_0000_02_10_7_sriov_pf_vfs_all.xml
new file mode 100644 (file)
index 0000000..9e8dace
--- /dev/null
@@ -0,0 +1,29 @@
+<device>
+  <name>pci_0000_02_10_7</name>
+  <parent>pci_0000_00_04_0</parent>
+  <capability type='pci'>
+    <domain>0</domain>
+    <bus>2</bus>
+    <slot>16</slot>
+    <function>7</function>
+    <product id='0x10ca'>82576 Virtual Function</product>
+    <vendor id='0x8086'>Intel Corporation</vendor>
+    <capability type='phys_function'>
+      <address domain='0x0000' bus='0x02' slot='0x00' function='0x1'/>
+    </capability>
+    <capability type='virt_functions' maxCount='7'>
+      <address domain='0x0000' bus='0x02' slot='0x00' function='0x2'/>
+      <address domain='0x0000' bus='0x02' slot='0x00' function='0x3'/>
+      <address domain='0x0000' bus='0x02' slot='0x00' function='0x4'/>
+      <address domain='0x0000' bus='0x02' slot='0x00' function='0x5'/>
+    </capability>
+    <iommuGroup number='31'>
+      <address domain='0x0000' bus='0x02' slot='0x10' function='0x7'/>
+    </iommuGroup>
+    <numa node='0'/>
+    <pci-express>
+      <link validity='cap' port='0' speed='2.5' width='4'/>
+      <link validity='sta' width='0'/>
+    </pci-express>
+  </capability>
+</device>
diff --git a/tests/nodedevschemadata/pci_0000_02_10_7_sriov_pf_vfs_all_header_type.xml b/tests/nodedevschemadata/pci_0000_02_10_7_sriov_pf_vfs_all_header_type.xml
new file mode 100644 (file)
index 0000000..4e6323a
--- /dev/null
@@ -0,0 +1,30 @@
+<device>
+  <name>pci_0000_02_10_7</name>
+  <parent>pci_0000_00_04_0</parent>
+  <capability type='pci'>
+    <domain>0</domain>
+    <bus>2</bus>
+    <slot>16</slot>
+    <function>7</function>
+    <product id='0x10ca'>82576 Virtual Function</product>
+    <vendor id='0x8086'>Intel Corporation</vendor>
+    <capability type='phys_function'>
+      <address domain='0x0000' bus='0x02' slot='0x00' function='0x1'/>
+    </capability>
+    <capability type='virt_functions' maxCount='7'>
+      <address domain='0x0000' bus='0x02' slot='0x00' function='0x2'/>
+      <address domain='0x0000' bus='0x02' slot='0x00' function='0x3'/>
+      <address domain='0x0000' bus='0x02' slot='0x00' function='0x4'/>
+      <address domain='0x0000' bus='0x02' slot='0x00' function='0x5'/>
+    </capability>
+    <capability type='pci-bridge'/>
+    <iommuGroup number='31'>
+      <address domain='0x0000' bus='0x02' slot='0x10' function='0x7'/>
+    </iommuGroup>
+    <numa node='0'/>
+    <pci-express>
+      <link validity='cap' port='0' speed='2.5' width='4'/>
+      <link validity='sta' width='0'/>
+    </pci-express>
+  </capability>
+</device>
diff --git a/tests/nodedevschemadata/pci_0000_02_10_7_sriov_vfs.xml b/tests/nodedevschemadata/pci_0000_02_10_7_sriov_vfs.xml
new file mode 100644 (file)
index 0000000..355eaaa
--- /dev/null
@@ -0,0 +1,26 @@
+<device>
+  <name>pci_0000_02_10_7</name>
+  <parent>pci_0000_00_04_0</parent>
+  <capability type='pci'>
+    <domain>0</domain>
+    <bus>2</bus>
+    <slot>16</slot>
+    <function>7</function>
+    <product id='0x10ca'>82576 Virtual Function</product>
+    <vendor id='0x8086'>Intel Corporation</vendor>
+    <capability type='virt_functions'>
+      <address domain='0x0000' bus='0x02' slot='0x00' function='0x2'/>
+      <address domain='0x0000' bus='0x02' slot='0x00' function='0x3'/>
+      <address domain='0x0000' bus='0x02' slot='0x00' function='0x4'/>
+      <address domain='0x0000' bus='0x02' slot='0x00' function='0x5'/>
+    </capability>
+    <iommuGroup number='31'>
+      <address domain='0x0000' bus='0x02' slot='0x10' function='0x7'/>
+    </iommuGroup>
+    <numa node='0'/>
+    <pci-express>
+      <link validity='cap' port='0' speed='2.5' width='4'/>
+      <link validity='sta' width='0'/>
+    </pci-express>
+  </capability>
+</device>
diff --git a/tests/nodedevschemadata/pci_0000_02_10_7_sriov_zero_vfs_max_count.xml b/tests/nodedevschemadata/pci_0000_02_10_7_sriov_zero_vfs_max_count.xml
new file mode 100644 (file)
index 0000000..e9eb122
--- /dev/null
@@ -0,0 +1,21 @@
+<device>
+  <name>pci_0000_02_10_7</name>
+  <parent>pci_0000_00_04_0</parent>
+  <capability type='pci'>
+    <domain>0</domain>
+    <bus>2</bus>
+    <slot>16</slot>
+    <function>7</function>
+    <product id='0x10ca'>82576 Virtual Function</product>
+    <vendor id='0x8086'>Intel Corporation</vendor>
+    <capability type='virt_functions' maxCount='3'/>
+    <iommuGroup number='31'>
+      <address domain='0x0000' bus='0x02' slot='0x10' function='0x7'/>
+    </iommuGroup>
+    <numa node='0'/>
+    <pci-express>
+      <link validity='cap' port='0' speed='2.5' width='4'/>
+      <link validity='sta' width='0'/>
+    </pci-express>
+  </capability>
+</device>