dm: refine the detection of "iasl" utility

At run time (on the *target* machine), acrn-dm depends on "iasl" to build
the ACPI tables for post-launched VMs.

This patch does:
- remove the dependency on ASL_COMPILER, which would only be used at build time
- add a new acrn-dm parameter "--iasl <iasl_compiler_path>"
  If "--iasl <iasl_compiler_path>" is specified as the acrn-dm parameter,
  acrn-dm uses <iasl_compiler_path> as the path to the "iasl" compiler;
  otherwise, "which iasl" is used to detect the "iasl" compiler.

  If "iasl" is not found at run time, refuse to launch the post-launched VM
  and exit directly.

v2 -> v3:
 - use "strlen" rather than "strncmp" to check whether asl_compiler
   has been set or not

v1 -> v2:
 - remove "iasl_param" and "with_iasl_param" to simplify the logic

Tracked-On: #7880

Signed-off-by: Victor Sun <victor.sun@intel.com>
Signed-off-by: Shiqing Gao <shiqing.gao@intel.com>
Acked-by: Wang, Yu1 <yu1.wang@intel.com>
This commit is contained in:
Shiqing Gao
2022-07-04 10:40:13 +08:00
committed by acrnsi-robot
parent 7cffac359b
commit cc309bd973
5 changed files with 77 additions and 12 deletions

View File

@@ -121,4 +121,7 @@ int lapicid_from_pcpuid(int pcpu_id);
int lapic_to_pcpu(int lapic);
int parse_madt(void);
int acrn_parse_iasl(char *arg);
int get_iasl_compiler(void);
#endif /* _ACPI_H_ */