XSA-256 forces the local APIC to always be enabled for PVH guests, so ignore any apic option for PVH guests. Update the documentation accordingly.
Signed-off-by: Roger Pau Monné <roger....@citrix.com> --- Cc: Ian Jackson <ian.jack...@eu.citrix.com> Cc: Wei Liu <wei.l...@citrix.com> --- docs/man/xl.cfg.pod.5.in | 6 ------ tools/libxl/libxl_x86.c | 6 +----- tools/xl/xl_parse.c | 2 +- 3 files changed, 2 insertions(+), 12 deletions(-) diff --git a/docs/man/xl.cfg.pod.5.in b/docs/man/xl.cfg.pod.5.in index a699367779..69552f8a05 100644 --- a/docs/man/xl.cfg.pod.5.in +++ b/docs/man/xl.cfg.pod.5.in @@ -2353,12 +2353,6 @@ compatibility mode on more modern Windows OS). This option is disabled by default. -=item B<apic=BOOLEAN> - -Enable the local APIC emulation for the guest. The local APIC information -will be exposed to the guest in the ACPI tables. This option is enabled by -default. - =item B<bootloader="PROGRAM"> Run C<PROGRAM> to find the kernel image and ramdisk to use. Normally diff --git a/tools/libxl/libxl_x86.c b/tools/libxl/libxl_x86.c index ad74ecc232..1e9f98961b 100644 --- a/tools/libxl/libxl_x86.c +++ b/tools/libxl/libxl_x86.c @@ -12,11 +12,7 @@ int libxl__arch_domain_prepare_config(libxl__gc *gc, xc_config->emulation_flags = (XEN_X86_EMU_ALL & ~XEN_X86_EMU_VPCI); break; case LIBXL_DOMAIN_TYPE_PVH: - if (libxl_defbool_val(d_config->b_info.apic)) - /* PVH guests may want to have LAPIC emulation. */ - xc_config->emulation_flags = XEN_X86_EMU_LAPIC; - else - xc_config->emulation_flags = 0; + xc_config->emulation_flags = XEN_X86_EMU_LAPIC; break; case LIBXL_DOMAIN_TYPE_PV: xc_config->emulation_flags = 0; diff --git a/tools/xl/xl_parse.c b/tools/xl/xl_parse.c index f6842540ca..8b999825d2 100644 --- a/tools/xl/xl_parse.c +++ b/tools/xl/xl_parse.c @@ -1208,7 +1208,6 @@ void parse_config_data(const char *config_source, } xlu_cfg_get_defbool(config, "nestedhvm", &b_info->nested_hvm, 0); - xlu_cfg_get_defbool(config, "apic", &b_info->apic, 0); switch(b_info->type) { case LIBXL_DOMAIN_TYPE_HVM: @@ -1243,6 +1242,7 @@ void parse_config_data(const char *config_source, xlu_cfg_get_defbool(config, "nx", &b_info->u.hvm.nx, 0); xlu_cfg_get_defbool(config, "hpet", &b_info->u.hvm.hpet, 0); xlu_cfg_get_defbool(config, "vpt_align", &b_info->u.hvm.vpt_align, 0); + xlu_cfg_get_defbool(config, "apic", &b_info->apic, 0); switch (xlu_cfg_get_list(config, "viridian", &viridian, &num_viridian, 1)) -- 2.16.1 _______________________________________________ Xen-devel mailing list Xen-devel@lists.xenproject.org https://lists.xenproject.org/mailman/listinfo/xen-devel