summaryrefslogtreecommitdiffstats
path: root/src/main/resources/libvirt/rng/domaincommon.rng
diff options
context:
space:
mode:
authorSimon Rettberg2025-08-14 12:30:01 +0200
committerSimon Rettberg2025-08-14 12:30:01 +0200
commitb93d4f1e174d6b6004565e85792d221816d6bbf6 (patch)
tree1172f07bc45210d0f006a4d737a78fa2dac8c44d /src/main/resources/libvirt/rng/domaincommon.rng
parentField belongs to version, not base image.... (diff)
downloadmaster-sync-shared-b93d4f1.tar.gz
master-sync-shared-b93d4f1.tar.xz
master-sync-shared-b93d4f1.zip
Update vbox and libvirt schema files
Diffstat (limited to 'src/main/resources/libvirt/rng/domaincommon.rng')
-rw-r--r--src/main/resources/libvirt/rng/domaincommon.rng641
1 files changed, 350 insertions, 291 deletions
diff --git a/src/main/resources/libvirt/rng/domaincommon.rng b/src/main/resources/libvirt/rng/domaincommon.rng
index 7121519..9782dca 100644
--- a/src/main/resources/libvirt/rng/domaincommon.rng
+++ b/src/main/resources/libvirt/rng/domaincommon.rng
@@ -7,6 +7,7 @@
<include href="cputypes.rng"/>
<include href="nwfilter_params.rng"/>
<include href="privatedata.rng"/>
+ <include href="sysinfocommon.rng"/>
<define name="createMode">
<data type="unsignedInt">
@@ -32,8 +33,33 @@
<define name="domaincontents">
<ref name="hvs"/>
+ <optional>
+ <attribute name="id">
+ <ref name="unsignedInt"/>
+ </attribute>
+ </optional>
<interleave>
- <ref name="ids"/>
+ <element name="name">
+ <ref name="objectNameWithSlash"/>
+ </element>
+ <optional>
+ <element name="uuid">
+ <ref name="UUID"/>
+ </element>
+ </optional>
+ <optional>
+ <element name="hwuuid">
+ <ref name="UUID"/>
+ </element>
+ </optional>
+ <optional>
+ <element name="genid">
+ <choice>
+ <ref name="UUID"/>
+ <empty/>
+ </choice>
+ </element>
+ </optional>
<optional>
<ref name="title"/>
</optional>
@@ -51,6 +77,7 @@
</zeroOrMore>
<ref name="os"/>
<ref name="clock"/>
+ <ref name="throttlegroups"/>
<ref name="resources"/>
<ref name="features"/>
<ref name="events"/>
@@ -528,6 +555,9 @@
<value>s390-pv</value>
</attribute>
</group>
+ <group>
+ <ref name="launchSecurityTDX"/>
+ </group>
</choice>
</element>
</define>
@@ -623,6 +653,44 @@
</optional>
</interleave>
</define>
+
+ <define name="launchSecurityTDX">
+ <attribute name="type">
+ <value>tdx</value>
+ </attribute>
+ <interleave>
+ <optional>
+ <element name="policy">
+ <ref name="hexuint"/>
+ </element>
+ </optional>
+ <optional>
+ <element name="mrConfigId">
+ <data type="string"/>
+ </element>
+ </optional>
+ <optional>
+ <element name="mrOwner">
+ <data type="string"/>
+ </element>
+ </optional>
+ <optional>
+ <element name="mrOwnerConfig">
+ <data type="string"/>
+ </element>
+ </optional>
+ <optional>
+ <element name="quoteGenerationService">
+ <optional>
+ <attribute name="path">
+ <ref name="absFilePath"/>
+ </attribute>
+ </optional>
+ </element>
+ </optional>
+ </interleave>
+ </define>
+
<!--
Enable or disable perf events for the domain. For each
of the events the following rules apply:
@@ -679,37 +747,6 @@
</element>
</define>
- <!--
- The Identifiers can be:
- - an optional id attribute with a number on the domain element
- - a mandatory name
- - an optional uuid
- -->
- <define name="ids">
- <optional>
- <attribute name="id">
- <ref name="unsignedInt"/>
- </attribute>
- </optional>
- <interleave>
- <element name="name">
- <ref name="objectNameWithSlash"/>
- </element>
- <optional>
- <element name="uuid">
- <ref name="UUID"/>
- </element>
- </optional>
- <optional>
- <element name="genid">
- <choice>
- <ref name="UUID"/>
- <empty/>
- </choice>
- </element>
- </optional>
- </interleave>
- </define>
<define name="idmap">
<element name="idmap">
<interleave>
@@ -1564,6 +1601,11 @@
</element>
</optional>
<optional>
+ <element name="shim">
+ <text/>
+ </element>
+ </optional>
+ <optional>
<element name="dtb">
<ref name="absFilePath"/>
</element>
@@ -1635,7 +1677,10 @@
<ref name="encryption"/>
</optional>
<optional>
- <ref name="diskIoTune"/>
+ <choice>
+ <ref name="throttlefilters"/>
+ <ref name="diskIoTune"/>
+ </choice>
</optional>
<optional>
<ref name="alias"/>
@@ -1669,7 +1714,7 @@
<element name="product">
<data type="string">
<!-- All printable characters -->
- <param name="pattern">[&#x20;-&#x7E;]{0,16}</param>
+ <param name="pattern">[&#x20;-&#x7E;]{0,40}</param>
</data>
</element>
</optional>
@@ -1768,6 +1813,8 @@
<value>virtio</value>
<value>virtio-transitional</value>
<value>virtio-non-transitional</value>
+ <value>usb-storage</value>
+ <value>usb-bot</value>
</choice>
</attribute>
</optional>
@@ -2519,9 +2566,14 @@
</define>
<define name="diskTargetDev">
- <data type="string">
- <param name="pattern">(ioemu:)?(fd|hd|sd|vd|xvd|ubd)[a-zA-Z0-9_]+</param>
- </data>
+ <choice>
+ <data type="string">
+ <param name="pattern">(ioemu:)?(fd|hd|sd|vd|xvd|ubd)[a-zA-Z0-9_]+</param>
+ </data>
+ <data type="string">
+ <param name="pattern">nvme[0-9]+n[0-9]+(p[0-9]+)?</param>
+ </data>
+ </choice>
</define>
<define name="diskTarget">
@@ -2541,6 +2593,7 @@
<value>uml</value> <!-- NOT USED ANYMORE -->
<value>sata</value>
<value>sd</value>
+ <value>nvme</value>
</choice>
</attribute>
</optional>
@@ -2606,7 +2659,7 @@
</element>
</define>
- <define name="diskDriverIothreads">
+ <define name="iothreadMapping">
<element name="iothreads">
<oneOrMore>
<element name="iothread">
@@ -2687,7 +2740,7 @@
</element>
</optional>
<optional>
- <ref name="diskDriverIothreads"/>
+ <ref name="iothreadMapping"/>
</optional>
</interleave>
</element>
@@ -3046,6 +3099,16 @@
</attribute>
</optional>
</group>
+ <group>
+ <attribute name="type">
+ <value>nvme</value>
+ </attribute>
+ <optional>
+ <element name="serial">
+ <ref name="diskSerial"/>
+ </element>
+ </optional>
+ </group>
</choice>
<optional>
<element name="driver">
@@ -3070,6 +3133,9 @@
<optional>
<ref name="driverIOThread"/>
</optional>
+ <optional>
+ <ref name="iothreadMapping"/>
+ </optional>
<ref name="virtioOptions"/>
</element>
</optional>
@@ -3485,7 +3551,37 @@
<value>vhostuser</value>
</attribute>
<interleave>
- <ref name="unixSocketSource"/>
+ <optional>
+ <element name="source">
+ <optional>
+ <attribute name="type">
+ <value>unix</value>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="path">
+ <ref name="absFilePath"/>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="mode">
+ <choice>
+ <value>server</value>
+ <value>client</value>
+ </choice>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="dev">
+ <ref name="deviceName"/>
+ </attribute>
+ </optional>
+ <optional>
+ <ref name="reconnect"/>
+ </optional>
+ <empty/>
+ </element>
+ </optional>
<ref name="interface-options"/>
</interleave>
</group>
@@ -3813,6 +3909,11 @@
<ref name="virYesNo"/>
</attribute>
</optional>
+ <optional>
+ <attribute name="currentAddress">
+ <ref name="uniMacAddr"/>
+ </attribute>
+ </optional>
<empty/>
</element>
</optional>
@@ -4516,6 +4617,16 @@
<ref name="addrIPorName"/>
</attribute>
</optional>
+ <optional>
+ <attribute name="username">
+ <text/>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="passwd">
+ <text/>
+ </attribute>
+ </optional>
<ref name="listenElements"/>
</group>
<group>
@@ -4527,11 +4638,6 @@
<text/>
</attribute>
</optional>
- <optional>
- <attribute name="fullscreen">
- <ref name="virYesNo"/>
- </attribute>
- </optional>
</group>
<group>
<attribute name="type">
@@ -6144,6 +6250,7 @@
<value>intel</value>
<value>smmuv3</value>
<value>virtio</value>
+ <value>amd</value>
</choice>
</attribute>
<interleave>
@@ -6179,6 +6286,16 @@
<ref name="virOnOff"/>
</attribute>
</optional>
+ <optional>
+ <attribute name="xtsup">
+ <ref name="virOnOff"/>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="passthrough">
+ <ref name="virOnOff"/>
+ </attribute>
+ </optional>
</element>
</optional>
<optional>
@@ -6833,6 +6950,37 @@
</interleave>
</element>
</define>
+ <define name="throttlegroup">
+ <element name="throttlegroup">
+ <ref name="iotune"/>
+ </element>
+ </define>
+ <!--
+ A set of optional throttlegroups
+ -->
+ <define name="throttlegroups">
+ <optional>
+ <element name="throttlegroups">
+ <zeroOrMore>
+ <ref name="throttlegroup"/>
+ </zeroOrMore>
+ </element>
+ </optional>
+ </define>
+ <!--
+ A set of throttlefilters to reference throttlegroups
+ -->
+ <define name="throttlefilters">
+ <element name="throttlefilters">
+ <zeroOrMore>
+ <element name="throttlefilter">
+ <attribute name="group">
+ <data type="string"/>
+ </attribute>
+ </element>
+ </zeroOrMore>
+ </element>
+ </define>
<!--
A set of optional features: PAE, APIC, ACPI, GIC, TCG,
HyperV Enlightenment, KVM features, paravirtual spinlocks and HAP support
@@ -6996,6 +7144,9 @@
<ref name="featurestate"/>
</element>
</optional>
+ <optional>
+ <ref name="aia"/>
+ </optional>
</interleave>
</element>
</optional>
@@ -7021,63 +7172,11 @@
<value>smbios</value>
</attribute>
<interleave>
- <optional>
- <element name="bios">
- <oneOrMore>
- <element name="entry">
- <attribute name="name">
- <ref name="sysinfo-bios-name"/>
- </attribute>
- <ref name="sysinfo-value"/>
- </element>
- </oneOrMore>
- </element>
- </optional>
- <optional>
- <element name="system">
- <oneOrMore>
- <element name="entry">
- <attribute name="name">
- <ref name="sysinfo-system-name"/>
- </attribute>
- <ref name="sysinfo-value"/>
- </element>
- </oneOrMore>
- </element>
- </optional>
- <zeroOrMore>
- <element name="baseBoard">
- <oneOrMore>
- <element name="entry">
- <attribute name="name">
- <ref name="sysinfo-baseBoard-name"/>
- </attribute>
- <ref name="sysinfo-value"/>
- </element>
- </oneOrMore>
- </element>
- </zeroOrMore>
- <optional>
- <element name="chassis">
- <oneOrMore>
- <element name="entry">
- <attribute name="name">
- <ref name="sysinfo-chassis-name"/>
- </attribute>
- <ref name="sysinfo-value"/>
- </element>
- </oneOrMore>
- </element>
- </optional>
- <optional>
- <element name="oemStrings">
- <oneOrMore>
- <element name="entry">
- <ref name="sysinfo-value"/>
- </element>
- </oneOrMore>
- </element>
- </optional>
+ <ref name="sysinfo-smbios-group-bios"/>
+ <ref name="sysinfo-smbios-group-system"/>
+ <ref name="sysinfo-smbios-group-baseboard"/>
+ <ref name="sysinfo-smbios-group-chassis"/>
+ <ref name="sysinfo-smbios-group-oemstrings"/>
</interleave>
</group>
<group>
@@ -7085,80 +7184,24 @@
<value>fwcfg</value>
</attribute>
<zeroOrMore>
- <element name="entry">
- <attribute name="name">
- <data type="string"/>
- </attribute>
- <choice>
- <group>
- <attribute name="file">
- <data type="string"/>
- </attribute>
- <empty/>
- </group>
- <group>
- <ref name="sysinfo-value"/>
- </group>
- </choice>
- </element>
+ <ref name="sysinfo-fwcfg-entry"/>
</zeroOrMore>
</group>
</choice>
</element>
</define>
- <define name="sysinfo-bios-name">
- <choice>
- <value>vendor</value>
- <value>version</value>
- <value>date</value>
- <value>release</value>
- </choice>
- </define>
-
- <define name="sysinfo-system-name">
- <choice>
- <value>manufacturer</value>
- <value>product</value>
- <value>version</value>
- <value>serial</value>
- <value>uuid</value>
- <value>sku</value>
- <value>family</value>
- </choice>
- </define>
-
- <define name="sysinfo-baseBoard-name">
- <choice>
- <value>manufacturer</value>
- <value>product</value>
- <value>version</value>
- <value>serial</value>
- <value>asset</value>
- <value>location</value>
- </choice>
- </define>
-
- <define name="sysinfo-chassis-name">
- <choice>
- <value>manufacturer</value>
- <value>version</value>
- <value>serial</value>
- <value>asset</value>
- <value>sku</value>
- </choice>
- </define>
-
- <define name="sysinfo-value">
- <data type="string"/>
- </define>
-
<define name="acpiTable">
<element name="acpi">
<zeroOrMore>
<element name="table">
<attribute name="type">
- <value>slic</value>
+ <choice>
+ <value>raw</value>
+ <value>rawset</value>
+ <value>slic</value>
+ <value>msdm</value>
+ </choice>
</attribute>
<ref name="absFilePath"/>
</element>
@@ -7294,6 +7337,18 @@
</element>
</define>
+ <define name="aia">
+ <element name="aia">
+ <attribute name="value">
+ <choice>
+ <value>none</value>
+ <value>aplic</value>
+ <value>aplic-imsic</value>
+ </choice>
+ </attribute>
+ </element>
+ </define>
+
<define name="address">
<element name="address">
<choice>
@@ -7800,134 +7855,138 @@
</element>
</define>
+ <define name="iotune">
+ <interleave>
+ <choice>
+ <element name="total_bytes_sec">
+ <data type="unsignedLong"/>
+ </element>
+ <group>
+ <interleave>
+ <optional>
+ <element name="read_bytes_sec">
+ <data type="unsignedLong"/>
+ </element>
+ </optional>
+ <optional>
+ <element name="write_bytes_sec">
+ <data type="unsignedLong"/>
+ </element>
+ </optional>
+ </interleave>
+ </group>
+ </choice>
+ <choice>
+ <element name="total_iops_sec">
+ <data type="unsignedLong"/>
+ </element>
+ <group>
+ <interleave>
+ <optional>
+ <element name="read_iops_sec">
+ <data type="unsignedLong"/>
+ </element>
+ </optional>
+ <optional>
+ <element name="write_iops_sec">
+ <data type="unsignedLong"/>
+ </element>
+ </optional>
+ </interleave>
+ </group>
+ </choice>
+ <choice>
+ <element name="total_bytes_sec_max">
+ <data type="unsignedLong"/>
+ </element>
+ <group>
+ <interleave>
+ <optional>
+ <element name="read_bytes_sec_max">
+ <data type="unsignedLong"/>
+ </element>
+ </optional>
+ <optional>
+ <element name="write_bytes_sec_max">
+ <data type="unsignedLong"/>
+ </element>
+ </optional>
+ </interleave>
+ </group>
+ </choice>
+ <choice>
+ <element name="total_iops_sec_max">
+ <data type="unsignedLong"/>
+ </element>
+ <group>
+ <interleave>
+ <optional>
+ <element name="read_iops_sec_max">
+ <data type="unsignedLong"/>
+ </element>
+ </optional>
+ <optional>
+ <element name="write_iops_sec_max">
+ <data type="unsignedLong"/>
+ </element>
+ </optional>
+ </interleave>
+ </group>
+ </choice>
+ <optional>
+ <element name="size_iops_sec">
+ <data type="unsignedLong"/>
+ </element>
+ </optional>
+ <optional>
+ <element name="group_name">
+ <text/>
+ </element>
+ </optional>
+ <choice>
+ <element name="total_bytes_sec_max_length">
+ <data type="unsignedLong"/>
+ </element>
+ <group>
+ <interleave>
+ <optional>
+ <element name="read_bytes_sec_max_length">
+ <data type="unsignedLong"/>
+ </element>
+ </optional>
+ <optional>
+ <element name="write_bytes_sec_max_length">
+ <data type="unsignedLong"/>
+ </element>
+ </optional>
+ </interleave>
+ </group>
+ </choice>
+ <choice>
+ <element name="total_iops_sec_max_length">
+ <data type="unsignedLong"/>
+ </element>
+ <group>
+ <interleave>
+ <optional>
+ <element name="read_iops_sec_max_length">
+ <data type="unsignedLong"/>
+ </element>
+ </optional>
+ <optional>
+ <element name="write_iops_sec_max_length">
+ <data type="unsignedLong"/>
+ </element>
+ </optional>
+ </interleave>
+ </group>
+ </choice>
+ </interleave>
+ </define>
+
<define name="diskIoTune">
<element name="iotune">
- <interleave>
- <choice>
- <element name="total_bytes_sec">
- <data type="unsignedLong"/>
- </element>
- <group>
- <interleave>
- <optional>
- <element name="read_bytes_sec">
- <data type="unsignedLong"/>
- </element>
- </optional>
- <optional>
- <element name="write_bytes_sec">
- <data type="unsignedLong"/>
- </element>
- </optional>
- </interleave>
- </group>
- </choice>
- <choice>
- <element name="total_iops_sec">
- <data type="unsignedLong"/>
- </element>
- <group>
- <interleave>
- <optional>
- <element name="read_iops_sec">
- <data type="unsignedLong"/>
- </element>
- </optional>
- <optional>
- <element name="write_iops_sec">
- <data type="unsignedLong"/>
- </element>
- </optional>
- </interleave>
- </group>
- </choice>
- <choice>
- <element name="total_bytes_sec_max">
- <data type="unsignedLong"/>
- </element>
- <group>
- <interleave>
- <optional>
- <element name="read_bytes_sec_max">
- <data type="unsignedLong"/>
- </element>
- </optional>
- <optional>
- <element name="write_bytes_sec_max">
- <data type="unsignedLong"/>
- </element>
- </optional>
- </interleave>
- </group>
- </choice>
- <choice>
- <element name="total_iops_sec_max">
- <data type="unsignedLong"/>
- </element>
- <group>
- <interleave>
- <optional>
- <element name="read_iops_sec_max">
- <data type="unsignedLong"/>
- </element>
- </optional>
- <optional>
- <element name="write_iops_sec_max">
- <data type="unsignedLong"/>
- </element>
- </optional>
- </interleave>
- </group>
- </choice>
- <optional>
- <element name="size_iops_sec">
- <data type="unsignedLong"/>
- </element>
- </optional>
- <optional>
- <element name="group_name">
- <text/>
- </element>
- </optional>
- <choice>
- <element name="total_bytes_sec_max_length">
- <data type="unsignedLong"/>
- </element>
- <group>
- <interleave>
- <optional>
- <element name="read_bytes_sec_max_length">
- <data type="unsignedLong"/>
- </element>
- </optional>
- <optional>
- <element name="write_bytes_sec_max_length">
- <data type="unsignedLong"/>
- </element>
- </optional>
- </interleave>
- </group>
- </choice>
- <choice>
- <element name="total_iops_sec_max_length">
- <data type="unsignedLong"/>
- </element>
- <group>
- <interleave>
- <optional>
- <element name="read_iops_sec_max_length">
- <data type="unsignedLong"/>
- </element>
- </optional>
- <optional>
- <element name="write_iops_sec_max_length">
- <data type="unsignedLong"/>
- </element>
- </optional>
- </interleave>
- </group>
- </choice>
- </interleave>
+ <ref name="iotune"/>
</element>
</define>