acrn-hypervisor/misc/config_tools
Zhou, Wu 4b81a2d89a config-tools: remove 'nomwait' from board_inspector's requirement
This patch is about the bug that VMs can't idle.

ACRN enables VM's C-state by extracting host's C-state table.
The C-state table has two types of interfaces: system-IO and mwait. VMs
just need one of them. ACRN can support both.

Currently we are telling users to use the system-IO type. That is, by
adding 'nomwait intel_idle.max_cstate=0' to host Linux's CMD line when
using board_inspector. (The reaseon we were using system-IO is that
mwait was buggy on Apollo Lake.)

But recent tests show that system-IO is somehow buggy. Linux c-state
driver(no matter intel_cstate or acpi_cstate) fails to enter idle state
with system-IO. This can always be reproduced on native environments.
MPERF counters show CPU cores are not in real idle state as expected.

To enable C-state in VMs, we have to switch to mwait.
As ACRN has already supported both system-IO and mwait, we don't have
to modify any code. We just need to tell user to use mwait instead of
system-IO.
That is, don't add 'nomwait intel_idle.max_cstate=0' to host Linux's
CMD line when using board_inspector. Just add 'intel_idle.max_cstate=0'

Due to the Apollo Lake's mwait bug, 'nomwait' is still needed for
Apollo Lake as an exception.

Tracked-On: #7371

Reviewed-by: Junjie Mao <junjie.mao@intel.com>
Signed-off-by: Zhou, Wu <wu.zhou@intel.com>
2022-04-30 17:06:23 +08:00
..
acpi_gen config_tools: track whether each vCPU is used for real-time or not 2022-04-21 10:08:53 +08:00
acpi_template/template config_tools: generate vDSDT according to allocated resources 2021-08-09 09:05:01 +08:00
board_config misc: refine cache config 2022-04-24 16:52:24 +08:00
board_inspector config-tools: remove 'nomwait' from board_inspector's requirement 2022-04-30 17:06:23 +08:00
config_app config_tools: make acrn_configurator.py an executable script 2022-01-26 14:20:43 +08:00
configurator config_tools: fix document typo 2022-04-27 12:54:47 +08:00
data config_tools: Add virtio_device example for all the platforms 2022-04-29 17:50:31 +08:00
hv_config config tool: update schema 2022-04-18 19:29:51 +08:00
launch_config config tool: add d3hot_reset in launch script 2022-04-26 12:58:27 +08:00
library Remove "All rights reserved" string headers 2022-04-06 13:21:02 +08:00
scenario_config config_tools: fix build issue 2022-04-26 09:22:57 +08:00
schema config_tools: do not apply distinct-values on a union of node-set 2022-04-28 15:36:11 +08:00
service_vm_config misc: refine the non-stand vUART config 2022-03-17 18:33:15 +08:00
static_allocators misc: fix the issue of create hv node 2022-04-28 13:42:54 +08:00
xforms misc: refine cache config 2022-04-24 16:52:24 +08:00
build.cmd config_tools: refactor configurator for web page cache issue 2022-04-25 18:13:12 +08:00
LICENSE config_tools: packaging config tool scripts for easier import 2022-03-18 08:49:06 +08:00
MANIFEST.in config_tools: refactor configurator for web page cache issue 2022-04-25 18:13:12 +08:00
pyproject.toml config_tools: packaging config tool scripts for easier import 2022-03-18 08:49:06 +08:00
README.md config_tools: packaging config tool scripts for easier import 2022-03-18 08:49:06 +08:00
requirements.txt config_tools: list dependencies on Python libraries in requirements.txt 2022-04-24 12:21:22 +08:00
setup.cfg config_tools: refactor configurator for web page cache issue 2022-04-25 18:13:12 +08:00

Supporting libraries of ACRN configuration toolset

This package contains the libraries supporting ACRN configuration toolset, including:

  • The manipulators and validators of scenario schemas or XMLs
  • The generator of guest ACPI tables

The main objective of this package is to ease the import of the supporting libraries in the ACRN configurator which uses a Python interpreter built in WebAssembly (WASM). This package is thus NOT intended to be used by users; invoke the Python scripts directly if needed.