misc: refine clos and vCAT element
The current UI "Maximum virtual CLOS" above the "VM Virtual Cache Allocation Tech", it's not user-friendly, and the clos element was not used by vCAT feature. This patch move the "virtual_cat_number" element and remove the unused node from schema. Tracked-On: #6690 Signed-off-by: Chenli Wei <chenli.wei@intel.com>
This commit is contained in:
parent
5d2ceb3860
commit
5bc55d352f
|
@ -68,23 +68,6 @@
|
|||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
|
||||
<xs:complexType name="CLOSConfiguration">
|
||||
<xs:sequence>
|
||||
<xs:element name="vcpu_clos" type="xs:integer" default="0" maxOccurs="unbounded">
|
||||
<xs:annotation>
|
||||
<xs:documentation>By default (``virtual_cat_support`` is not specified):
|
||||
vcpu_clos is per-CPU and it configures each CPU in VMs to a desired CLOS ID in the ``VM`` section of the
|
||||
scenario file. Follow :ref:`rdt_detection_capabilities` to identify the maximum supported CLOS ID that can be used.
|
||||
|
||||
If ``virtual_cat_support`` is specified:
|
||||
vcpu_clos is not per-CPU anymore, just a list of physical CLOSIDs (minimum 2) that are assigned to VMs
|
||||
for vCAT use. Each vcpu_clos will be mapped to a virtual CLOSID, the first vcpu_clos is mapped to virtual
|
||||
CLOSID 0 and the second is mapped to virtual CLOSID 1, etc.</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:element>
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
|
||||
<xs:complexType name="EPCSection">
|
||||
<xs:sequence>
|
||||
<xs:element name="base" type="HexFormat" default="0">
|
||||
|
|
|
@ -357,6 +357,11 @@ Refer to :ref:`vuart_config` for detailed vUART settings.</xs:documentation>
|
|||
<xs:documentation>Enable nested virtualization for KVM.</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:element>
|
||||
<xs:element name="virtual_cat_support" type="Boolean" default="n" minOccurs="0">
|
||||
<xs:annotation acrn:title="VM Virtual Cache Allocation Tech" acrn:applicable-vms="pre-launched, post-launched" acrn:views="advanced">
|
||||
<xs:documentation>Enable virtualization of the Cache Allocation Technology (CAT) feature in RDT. CAT enables you to allocate cache to VMs, providing isolation to avoid performance interference from other VMs.</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:element>
|
||||
<xs:element name="virtual_cat_number" default="0" minOccurs="0">
|
||||
<xs:annotation acrn:title="Maximum virtual CLOS" acrn:applicable-vms="pre-launched, post-launched" acrn:views="advanced">
|
||||
<xs:documentation>Max number of virtual CLOS MASK</xs:documentation>
|
||||
|
@ -370,11 +375,6 @@ Refer to :ref:`vuart_config` for detailed vUART settings.</xs:documentation>
|
|||
</xs:restriction>
|
||||
</xs:simpleType>
|
||||
</xs:element>
|
||||
<xs:element name="virtual_cat_support" type="Boolean" default="n" minOccurs="0">
|
||||
<xs:annotation acrn:title="VM Virtual Cache Allocation Tech" acrn:applicable-vms="pre-launched, post-launched" acrn:views="advanced">
|
||||
<xs:documentation>Enable virtualization of the Cache Allocation Technology (CAT) feature in RDT. CAT enables you to allocate cache to VMs, providing isolation to avoid performance interference from other VMs.</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:element>
|
||||
<xs:element name="secure_world_support" type="Boolean" default="n" minOccurs="0">
|
||||
<xs:annotation acrn:views="">
|
||||
<xs:documentation>Specify secure world support for trusty OS.</xs:documentation>
|
||||
|
@ -390,12 +390,6 @@ Refer to :ref:`vuart_config` for detailed vUART settings.</xs:documentation>
|
|||
<xs:documentation>Specify TPM2 FIXUP for VM.</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:element>
|
||||
<xs:element name="clos" type="CLOSConfiguration">
|
||||
<xs:annotation acrn:views="advanced">
|
||||
<xs:documentation>Class of Service for Cache Allocation Technology.
|
||||
Refer SDM 17.19.2 for details, and use with caution.</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:element>
|
||||
<xs:element name="epc_section" type="EPCSection" minOccurs="0">
|
||||
<xs:annotation acrn:title="SGX Enclave Page Cache" acrn:views="advanced" acrn:applicable-vms="pre-launched">
|
||||
<xs:documentation>Specify the Intel Software Guard Extensions (SGX) enclave page cache (EPC) section settings.</xs:documentation>
|
||||
|
|
|
@ -106,7 +106,7 @@
|
|||
<xsl:call-template name="guest_flags" />
|
||||
|
||||
<xsl:if test="acrn:is-rdt-enabled()">
|
||||
<xsl:apply-templates select="clos" />
|
||||
<xsl:call-template name="clos" />
|
||||
</xsl:if>
|
||||
|
||||
<xsl:call-template name="cpu_affinity" />
|
||||
|
@ -176,14 +176,14 @@
|
|||
<xsl:value-of select="acrn:initializer('guest_flags', concat('(', acrn:string-join(//allocation-data/acrn-config/vm[@id=$vm_id]/guest_flags/guest_flag, '|', '', ''),')'))" />
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template match="clos">
|
||||
<xsl:template name="clos">
|
||||
<xsl:value-of select="acrn:ifdef('CONFIG_RDT_ENABLED')" />
|
||||
<xsl:value-of select="acrn:initializer('pclosids', concat('vm', ../@id, '_vcpu_clos'))" />
|
||||
<xsl:value-of select="acrn:initializer('pclosids', concat('vm', @id, '_vcpu_clos'))" />
|
||||
|
||||
<xsl:variable name="vm_id" select="../@id" />
|
||||
<xsl:variable name="vm_name" select="../name/text()" />
|
||||
<xsl:variable name="vm_id" select="@id" />
|
||||
<xsl:variable name="vm_name" select="name/text()" />
|
||||
<xsl:choose>
|
||||
<xsl:when test="acrn:is-vcat-enabled() and ../virtual_cat_support[text() = 'y']">
|
||||
<xsl:when test="acrn:is-vcat-enabled() and virtual_cat_support[text() = 'y']">
|
||||
<xsl:value-of select="acrn:initializer('num_pclosids', concat(count(//vm[@id=$vm_id]/virtual_cat_number), 'U'))" />
|
||||
<xsl:variable name="rdt_res_str" select="acrn:get-normalized-closinfo-rdt-res-str()" />
|
||||
|
||||
|
|
Loading…
Reference in New Issue