]> xenbits.xensource.com Git - people/royger/xen.git/commitdiff
xl: remove apic option for PVH guests
authorRoger Pau Monne <roger.pau@citrix.com>
Wed, 28 Feb 2018 09:48:50 +0000 (09:48 +0000)
committerRoger Pau Monne <roger.pau@citrix.com>
Thu, 1 Mar 2018 17:03:17 +0000 (17:03 +0000)
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.pau@citrix.com>
---
Cc: Ian Jackson <ian.jackson@eu.citrix.com>
Cc: Wei Liu <wei.liu2@citrix.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: George Dunlap <George.Dunlap@eu.citrix.com>
Cc: Jan Beulich <jbeulich@suse.com>
Cc: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
Cc: Stefano Stabellini <sstabellini@kernel.org>
Cc: Tim Deegan <tim@xen.org>
---
Changes since v1:
 - Remove the trailing "if present" from the AP startup.

docs/man/xl.cfg.pod.5.in
docs/misc/pvh.markdown
tools/libxl/libxl_x86.c
tools/xl/xl_parse.c

index a699367779e2ae1212ff8f638eff0206ec1a1cc9..69552f8a05259f4f18c8f8ae74627f1f9ac6d901 100644 (file)
@@ -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
index e85fb15374b162ec77eaaaa7e3f940cfcadc9996..e2091ac6f0cc12f77ad1901032fce19c3c5d0b45 100644 (file)
@@ -46,7 +46,7 @@ as HVM guests, using the hypervisor cpuid leaves and msr ranges.
 
 ## AP startup ##
 
-AP startup can be performed using hypercalls or the local APIC if present.
+AP startup can be performed using hypercalls or the local APIC.
 The following VCPU hypercalls can be used in order to bring up secondary vCPUs:
 
  * `VCPUOP_initialise` is used to set the initial state of the vCPU. The
index d82013f6ed4ab1ae49ba2c1f433fc40786c5a235..4ea12499250bb1efd6b5384aa8893e62148e739b 100644 (file)
@@ -12,11 +12,7 @@ int libxl__arch_domain_prepare_config(libxl__gc *gc,
         xc_config->emulation_flags = XEN_X86_EMU_ALL;
         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;
index f6842540ca11872bbda6db1efe6f22418d964b68..8b999825d25405d7da2fbe7cef02873d7b2f7334 100644 (file)
@@ -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))