ce6500893f
Using partial executable paths in the board inspector may cause unintended results when another executable has the same name and is also detectable in the search paths. Introduce a wrapper module (`external_tools`) which locates executables only under system paths such as /usr/bin and /usr/sbin and converts partial executable paths to absolute ones before executing them via the subprocess module. All invocations to `subprocess.run` or `subprocess.Popen` throughout the board inspector are replaced with `external_tools.run`, with the only exception being the invocation to the legacy board parser which already uses an absolute path to the current Python interpreter. Tracked-On: #8315 Signed-off-by: Junjie Mao <junjie.mao@intel.com> |
||
---|---|---|
.. | ||
acpiparser | ||
cpuparser | ||
extractors | ||
inspectorlib | ||
legacy | ||
memmapparser | ||
pcieparser | ||
schema | ||
smbiosparser | ||
README | ||
board_inspector.py |
README
board_parser.py will collect all board related info and then generate a board info file for acrn-config host tool usage. usage: python3 board_inspector.py <board_name> [--out board_info_file] board_name : the name of board that run ACRN hypervisor, like apl-up2/nuc7i7dnb. It will be used as name of the board configurations folder which created by acrn-config host tool. board_info_file : (optional) the name of board info file. if it is not specified, a name of <board_name>.xml will be generated under the current working directory by default. Please run this script under native Linux environment with root privilege. OS requirement: Release: Ubuntu 18.04+ Tools: cpuid, rdmsr, lspci, lxml, dmidecode (optional) kernel cmdline: "iomem=relaxed intel_idle.max_cstate=0 intel_pstate=disable" or "idle=nomwait iomem=relaxed intel_idle.max_cstate=0 intel_pstate=disable" for Apollo Lake