diff --git a/misc/config_tools/schema/VMtypes.xsd b/misc/config_tools/schema/VMtypes.xsd index db9a40cbb..a777099ac 100644 --- a/misc/config_tools/schema/VMtypes.xsd +++ b/misc/config_tools/schema/VMtypes.xsd @@ -22,16 +22,17 @@ Current supported VM types are: -- ``RTVM`` Read-time VM -- ``STANDARD_VM`` Service VM -- ``TEE_VM`` VM with Trusted Execution Environment, which could provide high level - security of code execution -- ``REE_VM`` VM with Rich Execution Environment, which is a companion VM with TEE_VM, - and could provide more features and applications, but is vulnerable to attacks +- ``Real-time`` for time-sensitive applications. +- ``Standard`` for general-purpose applications, such as human-machine interface (HMI). + - - + + + + + + @@ -72,12 +73,12 @@ CLOSID 0 and the second is mapped to virtual CLOSID 1, etc. - + Specify the enclave page cache (EPC) section base for Intel Software Guard Extensions (SGX). Must be page aligned. - + Specify the enclave page cache (EPC) section size in bytes for Intel Software Guard Extensions (SGX). Must be page aligned. @@ -87,8 +88,8 @@ CLOSID 0 and the second is mapped to virtual CLOSID 1, etc. - - Specify the physical memory allocated to this VM in Megabytes. + + Specify the physical memory size allocated to this VM in megabytes. @@ -177,8 +178,12 @@ CLOSID 0 and the second is mapped to virtual CLOSID 1, etc. vCOM type - - + + + + + + @@ -191,17 +196,25 @@ CLOSID 0 and the second is mapped to virtual CLOSID 1, etc. - Virtual I/O address + Specify the COM base for each legacy virtual UART. + + + + + Specify the virtual Bus:Device.Function (BDF) for each PCI virtual UART. Virtual BDF is automatically assigned when the configuration is saved and can be changed if needed. - - + + + Select the communication virtual UART (vUART) type. + + @@ -215,13 +228,13 @@ CLOSID 0 and the second is mapped to virtual CLOSID 1, etc. - - Pass through the trusted platform module (TPM2) device to this VM. + + Enable passthrough of the trusted platform module (TPM2) device to this VM. - - Pass through the Primary-to-Sideband (P2SB) bridge register access BAR to this VM. + + Enable passthrough of the Primary-to-Sideband (P2SB) bridge register access BAR to this VM. diff --git a/misc/config_tools/schema/config.xsd b/misc/config_tools/schema/config.xsd index 073f9973b..535f4fbf5 100644 --- a/misc/config_tools/schema/config.xsd +++ b/misc/config_tools/schema/config.xsd @@ -15,7 +15,12 @@ - Select the build type. Debug mode enables debug shell, prints, and logs. Release mode optimizes the ACRN binary for deployment and turns off all debug infrastructure. These settings can only be changed at build time. + Select the build type: + +* ``Debug`` enables the debug shell, prints, and logs. +* ``Release`` optimizes the ACRN binary for deployment and turns off all debug infrastructure. + +These settings can only be changed at build time. @@ -49,28 +54,28 @@ - + Enable hypervisor relocation in memory. The bootloader may need to change the location of the hypervisor because of other firmware. - Select the scheduling algorithm used to determine which User VM runs on a shared virtual CPU. + Select the scheduling algorithm for determining the priority of User VMs running on a shared virtual CPU. - Enable multiboot2 protocol support and multiboot1 downward compatibility. Disable this feature if multiboot1 meets your requirements and to reduce lines of code. + Enable multiboot2 protocol support (with multiboot1 downward compatibility). If multiboot1 meets your requirements, disable this feature to reduce hypervisor code size. - Enable detection of split locks, which can negatively affect an application's real-time performance. If a lock is detected, an alignment check exception #AC occurs. + Enable detection of split locks. A split lock can negatively affect an application's real-time performance. If a lock is detected, an alignment check exception #AC occurs. - - Enable detection of uncacheable-memory locks, which can negatively affect an application's real-time performance. If a lock is detected, a general-protection exception #GP occurs. + + Enable detection of uncacheable-memory (UC) locks. A UC lock can negatively affect an application's real-time performance. If a lock is detected, a general-protection exception #GP occurs. @@ -84,13 +89,13 @@ - + Intel Resource Director Technology (RDT) provides cache and memory bandwidth allocation features. The features can be used to improve an application's real-time performance. - - Enable Microsoft Hyper-V Hypervisor Top-Level Functional Specification (TFLS) for Windows User VMs. + + Enable Microsoft Hyper-V Hypervisor Top-Level Functional Specification (TFLS) for User VMs running Windows. @@ -99,28 +104,28 @@ - + Enable ACPI runtime parsing to get DMAR (DMA remapping) configuration data from the APCI tables. Otherwise, use existing, static information from the associated board configuration file. - Enable L1 cache flush before VM entry to prevent L1 terminal fault. L1 terminal fault is a hardware vulnerability that allows unauthorized disclosure of information residing in the L1 data cache. + Enable L1 cache flush before VM entry to prevent L1 terminal fault. L1 terminal fault is a hardware vulnerability that could allow unauthorized disclosure of information residing in the L1 data cache. - - Enable the software workaround for Machine Check Error on Page Size Change (hardware bug in some processor families). + + Enable the software workaround for Machine Check Error on Page Size Change (erratum in some processor families). - + Configure shared memory regions for inter-VM communication. - - + + Configure Software SRAM. This feature reserves memory buffers as always-cached memory to improve an application's real-time performance. @@ -129,7 +134,7 @@ - + Specify the size of the memory stack in bytes for each physical CPU. For example, if you specify 8 kilobytes, each CPU will get its own 8-kilobyte stack. @@ -166,7 +171,7 @@ - + Specify the maximum number of PCI devices. This impacts the amount of memory used to maintain information about these PCI devices. The default value is calculated from the board configuration file. If you have PCI devices that were not detected by the Board Inspector, you may need to change this maximum value. @@ -194,12 +199,12 @@ - + Specify the maximum number of interrupt request (IRQ) entries from all passthrough devices. - + Specify the maximum number of Message Signaled Interrupt MSI-X tables per device. The default value is calculated from the board configuration file. @@ -213,7 +218,7 @@ - + Specify the maximum number of emulated MMIO regions for device virtualization. The default value is calculated from the board configuration file. @@ -267,7 +272,7 @@ - + Specify the vUART connection settings. Refer to :ref:`vuart_config` for detailed vUART settings. @@ -318,13 +323,13 @@ Refer to :ref:`vuart_config` for detailed vUART settings. - + 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. - Specify secure world support for trustry OS. + Specify secure world support for trusty OS. @@ -405,17 +410,17 @@ argument and memory. - + Use virtual bootloader OVMF (Open Virtual Machine Firmware) to boot this VM. - + Enable the ACRN Device Model to emulate COM1 as a User VM stdio I/O. Hypervisor global emulation will take priority over this VM setting. - + Select the USB physical bus and port number that will be emulated by the ACRN Device Model for this VM. USB 3.0, 2.0, and 1.0 are supported. @@ -435,18 +440,18 @@ argument and memory. - The virtio console device setting.Input format: - ``[@]stdio|tty|pty|sock:portname[=portpath][,[@]stdio|tty|pty:portname[=portpath]]`` + The virtio console device setting. Input format: +``[@]stdio|tty|pty|sock:portname[=portpath][,[@]stdio|tty|pty:portname[=portpath]]`` The virtio network device setting. - Input format: ``device_name[,vhost][,mac=XX:XX:XX:XX:XX:XX]``. - The ``device_name`` is the name of the TAP (or MacVTap) device. - It must include the keyword ``tap``. ``vhost`` specifies the - vhost backend; otherwise, the VBSU backend is used. The ``mac`` - address is optional. +Input format: ``device_name[,vhost][,mac=XX:XX:XX:XX:XX:XX]``. +The ``device_name`` is the name of the TAP (or MacVTap) device. +It must include the keyword ``tap``. ``vhost`` specifies the +vhost backend; otherwise, the VBSU backend is used. The ``mac`` +address is optional. @@ -457,7 +462,7 @@ argument and memory. The virtio block device setting. - Format: [blk partition:][img path] e.g.: /dev/sda3:./a/b.img +Format: ``[blk partition:][img path]``. Example: ``/dev/sda3:./a/b.img``. diff --git a/misc/config_tools/schema/types.xsd b/misc/config_tools/schema/types.xsd index e6f612862..f75ba198f 100644 --- a/misc/config_tools/schema/types.xsd +++ b/misc/config_tools/schema/types.xsd @@ -40,8 +40,12 @@ A string that indicates the build type of the hypervisor. - - + + + + + + @@ -85,15 +89,15 @@ - An Integer from 0 to 7 representing log message + An Integer from 0 to 5 representing log message severity and intent: -- 0 no log at all -- 1 (LOG_FATAL) system is unusable -- 2 (LOG_ERROR) error conditions -- 3 (LOG_WARNING) warning conditions -- 4 (LOG_INFO) informational -- 5 (LOG_DEBUG) debug-level messages +- ``0: None``: No log at all. +- ``1: Critical``: Messages about critical errors that cause the hypervisor to crash or hang (almost) immediately. +- ``2: Error``: Messages about significant errors that affect the main functions (for example, launch of VMs) of ACRN hypervisor. +- ``3: Warning``: Messages about detected abnormalities that have local effects on certain features. +- ``4: Information``: Informational messages +- ``5: Debug``: Debug-level messages A lower value has a higher severity. Log messages with a higher value (lower severity) are discarded. @@ -122,28 +126,31 @@ higher value (lower severity) are discarded. - Four scheduler options are supported: + Options: -- ``SCHED_NOOP``: The NOOP (No-Operation) scheduler means there is a - strict 1 to 1 mapping between vCPUs and pCPUs. -- ``SCHED_IORR``: The IORR (IO sensitive Round Robin) scheduler supports - multiple vCPUs running on one pCPU, scheduled by - a IO sensitive round robin policy. -- ``SCHED_BVT``: The BVT (Borrowed Virtual Time) scheduler is a virtual time based - scheduling algorithm, it dispatches the runnable thread with the +- ``No-Operation (NOOP)``: The No-Operation (NOOP) scheduler means there is a + strict one-to-one mapping between vCPUs and pCPUs. +- ``Borrowed Virtual Time``: The Borrowed Virtual Time (BVT) scheduler is a + virtual time-based + scheduling algorithm. It dispatches the runnable thread with the earliest effective virtual time. *TODO: BVT scheduler will be built on top of a prioritized scheduling mechanism, i.e. higher priority threads get scheduled first, and same priority tasks are scheduled per BVT.* -- ``SCHED_PRIO``: The priority based scheduler. vCPU scheduling will be based on - their pre-configured priorities. +- ``Priority Based Scheduling``: The priority based scheduler supports vCPU scheduling based on their pre-configured priorities. Read more about the available scheduling options in :ref:`cpu_sharing`. - + + + - - + + + + + + @@ -196,14 +203,13 @@ Read more about the available scheduling options in :ref:`cpu_sharing`. - - Name of the VM which use this IVSHMEM. + + Name of the VM that uses this shared memory region. - - Bus, Device and function of the virtual -device in VM . Set in hex. + + Virtual BDF (Bus Device Function) is automatically assigned and can be changed if needed. Set in Hex. @@ -213,7 +219,7 @@ device in VM . Set in hex. - Set each VM which use this IVSHMEM. + Select all VMs that use the shared memory region. @@ -269,7 +275,7 @@ and no more than 512. - Set a inter-VM shared memory. + Create a memory region for VMs to share: specify its name, size, and associated VMs. @@ -278,9 +284,9 @@ and no more than 512. - - Enable the Intel Resource Director Technology (RDT) -allocation feature. If the board hardware does not support + + Enable Intel Resource Director Technology (RDT). If +the board hardware does not support RDT, setting this option to ``y`` is ignored. @@ -290,7 +296,7 @@ RDT, setting this option to ``y`` is ignored. - + 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. @@ -314,7 +320,7 @@ As :option:`vm.clos.vcpu_clos` specifies the index of the CLOS to be associated - + Enable Software SRAM. This feature reserves memory buffers as always-cached memory to improve an application's real-time performance.