mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2024-12-22 05:35:25 +00:00
conf: extend domain capabilities for max SEV guest count
There are limits on the number of SEV/SEV-ES guests that can be run on machines, which may be influenced by firmware settings. This is important to expose to users. Reviewed-by: Peter Krempa <pkrempa@redhat.com> Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
This commit is contained in:
parent
719bb0bf23
commit
34cb8f6fcd
@ -681,6 +681,12 @@
|
||||
<dt><code>reducedPhysBits</code></dt>
|
||||
<dd>When memory encryption is enabled, we lose certain bits in physical
|
||||
address space. The number of bits we lose is hypervisor dependent.</dd>
|
||||
<dt><code>maxGuests</code></dt>
|
||||
<dd>The maximum number of SEV guests that can be launched on the host.
|
||||
This value may be configurable in the firmware for some hosts.</dd>
|
||||
<dt><code>maxESGuests</code></dt>
|
||||
<dd>The maximum number of SEV-ES guests that can be launched on the host.
|
||||
This value may be configurable in the firmware for some hosts.</dd>
|
||||
</dl>
|
||||
|
||||
</body>
|
||||
|
@ -323,6 +323,12 @@
|
||||
<element name="reducedPhysBits">
|
||||
<data type="unsignedInt"/>
|
||||
</element>
|
||||
<element name="maxGuests">
|
||||
<data type="unsignedInt"/>
|
||||
</element>
|
||||
<element name="maxESGuests">
|
||||
<data type="unsignedInt"/>
|
||||
</element>
|
||||
</optional>
|
||||
</element>
|
||||
</define>
|
||||
|
@ -597,6 +597,10 @@ virDomainCapsFeatureSEVFormat(virBuffer *buf,
|
||||
virBufferAsprintf(buf, "<cbitpos>%d</cbitpos>\n", sev->cbitpos);
|
||||
virBufferAsprintf(buf, "<reducedPhysBits>%d</reducedPhysBits>\n",
|
||||
sev->reduced_phys_bits);
|
||||
virBufferAsprintf(buf, "<maxGuests>%d</maxGuests>\n",
|
||||
sev->max_guests);
|
||||
virBufferAsprintf(buf, "<maxESGuests>%d</maxESGuests>\n",
|
||||
sev->max_es_guests);
|
||||
virBufferAdjustIndent(buf, -2);
|
||||
virBufferAddLit(buf, "</sev>\n");
|
||||
}
|
||||
|
@ -187,6 +187,8 @@ struct _virSEVCapability {
|
||||
char *cert_chain;
|
||||
unsigned int cbitpos;
|
||||
unsigned int reduced_phys_bits;
|
||||
unsigned int max_guests;
|
||||
unsigned int max_es_guests;
|
||||
};
|
||||
|
||||
typedef enum {
|
||||
|
@ -205,6 +205,8 @@
|
||||
<sev supported='yes'>
|
||||
<cbitpos>47</cbitpos>
|
||||
<reducedPhysBits>1</reducedPhysBits>
|
||||
<maxGuests>0</maxGuests>
|
||||
<maxESGuests>0</maxESGuests>
|
||||
</sev>
|
||||
</features>
|
||||
</domainCapabilities>
|
||||
|
@ -215,6 +215,8 @@
|
||||
<sev supported='yes'>
|
||||
<cbitpos>47</cbitpos>
|
||||
<reducedPhysBits>1</reducedPhysBits>
|
||||
<maxGuests>0</maxGuests>
|
||||
<maxESGuests>0</maxESGuests>
|
||||
</sev>
|
||||
</features>
|
||||
</domainCapabilities>
|
||||
|
@ -205,6 +205,8 @@
|
||||
<sev supported='yes'>
|
||||
<cbitpos>47</cbitpos>
|
||||
<reducedPhysBits>1</reducedPhysBits>
|
||||
<maxGuests>0</maxGuests>
|
||||
<maxESGuests>0</maxESGuests>
|
||||
</sev>
|
||||
</features>
|
||||
</domainCapabilities>
|
||||
|
@ -227,6 +227,8 @@
|
||||
<sev supported='yes'>
|
||||
<cbitpos>47</cbitpos>
|
||||
<reducedPhysBits>1</reducedPhysBits>
|
||||
<maxGuests>0</maxGuests>
|
||||
<maxESGuests>0</maxESGuests>
|
||||
</sev>
|
||||
</features>
|
||||
</domainCapabilities>
|
||||
|
@ -233,6 +233,8 @@
|
||||
<sev supported='yes'>
|
||||
<cbitpos>47</cbitpos>
|
||||
<reducedPhysBits>1</reducedPhysBits>
|
||||
<maxGuests>0</maxGuests>
|
||||
<maxESGuests>0</maxESGuests>
|
||||
</sev>
|
||||
</features>
|
||||
</domainCapabilities>
|
||||
|
@ -227,6 +227,8 @@
|
||||
<sev supported='yes'>
|
||||
<cbitpos>47</cbitpos>
|
||||
<reducedPhysBits>1</reducedPhysBits>
|
||||
<maxGuests>0</maxGuests>
|
||||
<maxESGuests>0</maxESGuests>
|
||||
</sev>
|
||||
</features>
|
||||
</domainCapabilities>
|
||||
|
Loading…
Reference in New Issue
Block a user