@@ -107,42 +107,7 @@ config PV_LINEAR_PT
If unsure, say Y.
-config HVM
- bool "HVM support"
- depends on !PV_SHIM_EXCLUSIVE
- default !PV_SHIM
- select COMPAT
- select IOREQ_SERVER
- select MEM_ACCESS_ALWAYS_ON
- help
- Interfaces to support HVM domains. HVM domains require hardware
- virtualisation extensions (e.g. Intel VT-x, AMD SVM), but can boot
- guests which have no specific Xen knowledge.
-
- This option is needed if you want to run HVM or PVH domains.
-
- If unsure, say Y.
-
-config AMD_SVM
- bool "AMD-V" if EXPERT
- depends on HVM
- default y
- help
- Enables virtual machine extensions on platforms that implement the
- AMD Virtualization Technology (AMD-V).
- If your system includes a processor with AMD-V support, say Y.
- If in doubt, say Y.
-
-config INTEL_VMX
- bool "Intel VT-x" if EXPERT
- depends on HVM
- default y
- select ARCH_VCPU_IOREQ_COMPLETION
- help
- Enables virtual machine extensions on platforms that implement the
- Intel Virtualization Technology (Intel VT-x).
- If your system includes a processor with Intel VT-x support, say Y.
- If in doubt, say Y.
+source "arch/x86/hvm/Kconfig"
config XEN_SHSTK
bool "Supervisor Shadow Stacks"
@@ -201,25 +166,6 @@ config BIGMEM
If unsure, say N.
-config HVM_FEP
- bool "HVM Forced Emulation Prefix support (UNSUPPORTED)" if UNSUPPORTED
- default DEBUG
- depends on HVM
- help
-
- Compiles in a feature that allows HVM guest to arbitrarily
- exercise the instruction emulator.
-
- This feature can only be enabled during boot time with
- appropriate hypervisor command line option. Please read
- hypervisor command line documentation before trying to use
- this feature.
-
- This is strictly for testing purposes, and not appropriate
- for use in production.
-
- If unsure, say N.
-
config TBOOT
bool "Xen tboot support (UNSUPPORTED)"
depends on INTEL && UNSUPPORTED
@@ -348,14 +294,6 @@ config HYPERV_GUEST
endif
-config MEM_PAGING
- bool "Xen memory paging support (UNSUPPORTED)" if UNSUPPORTED
- depends on HVM && VM_EVENT
-
-config MEM_SHARING
- bool "Xen memory sharing support (UNSUPPORTED)" if UNSUPPORTED
- depends on HVM
-
config REQUIRE_NX
bool "Require NX (No eXecute) support"
help
@@ -372,17 +310,6 @@ config REQUIRE_NX
was unavailable. However, if enabled, Xen will no longer boot on
any CPU which is lacking NX support.
-config ALTP2M
- bool "Alternate P2M support" if EXPERT
- depends on INTEL_VMX
- default y
- help
- Alternate-p2m allows a guest to manage multiple p2m guest physical
- "memory views" (as opposed to a single p2m).
- Useful for memory introspection.
-
- If unsure, stay with defaults.
-
config UCODE_SCAN_DEFAULT
bool "Scan for microcode by default"
help
new file mode 100644
@@ -0,0 +1,73 @@
+menuconfig HVM
+ bool "HVM support"
+ depends on !PV_SHIM_EXCLUSIVE
+ default !PV_SHIM
+ select COMPAT
+ select IOREQ_SERVER
+ select MEM_ACCESS_ALWAYS_ON
+ help
+ Interfaces to support HVM domains. HVM domains require hardware
+ virtualisation extensions (e.g. Intel VT-x, AMD SVM), but can boot
+ guests which have no specific Xen knowledge.
+
+ This option is needed if you want to run HVM or PVH domains.
+
+ If unsure, say Y.
+
+if HVM
+
+config AMD_SVM
+ bool "AMD-V" if AMD && EXPERT
+ default y
+ help
+ Enables virtual machine extensions on platforms that implement the
+ AMD Virtualization Technology (AMD-V).
+ If your system includes a processor with AMD-V support, say Y.
+ If in doubt, say Y.
+
+config INTEL_VMX
+ bool "Intel VT-x" if INTEL && EXPERT
+ default y
+ select ARCH_VCPU_IOREQ_COMPLETION
+ help
+ Enables virtual machine extensions on platforms that implement the
+ Intel Virtualization Technology (Intel VT-x).
+ If your system includes a processor with Intel VT-x support, say Y.
+ If in doubt, say Y.
+
+config HVM_FEP
+ bool "HVM Forced Emulation Prefix support (UNSUPPORTED)" if UNSUPPORTED
+ default DEBUG
+ help
+ Compiles in a feature that allows HVM guest to arbitrarily
+ exercise the instruction emulator.
+
+ This feature can only be enabled during boot time with
+ appropriate hypervisor command line option. Please read
+ hypervisor command line documentation before trying to use
+ this feature.
+
+ This is strictly for testing purposes, and not appropriate
+ for use in production.
+
+ If unsure, say N.
+
+config ALTP2M
+ bool "Alternate P2M support" if EXPERT
+ depends on INTEL_VMX
+ default y
+ help
+ Alternate-p2m allows a guest to manage multiple p2m guest physical
+ "memory views" (as opposed to a single p2m).
+ Useful for memory introspection.
+
+ If unsure, stay with defaults.
+
+config MEM_PAGING
+ bool "Xen memory paging support (UNSUPPORTED)" if UNSUPPORTED
+ depends on VM_EVENT
+
+config MEM_SHARING
+ bool "Xen memory sharing support (UNSUPPORTED)" if UNSUPPORTED
+
+endif
Add a separate menu for configuring HVM build-time settings to better organize HVM-specific options. HVM options will now appear in a dedicated sub-menu in the menuconfig tool. Also, make AMD_SVM config dependent on AMD config and INTEL_VMX on INTEL respectively. Signed-off-by: Denis Mukhin <dmukhin@ford.com> --- Changes v2->v3: - dropped menu around AMD_SVM and INTEL_VMX - rebased, resolved merge conflict for MEM_PAGING - it depends on VM_EVENT --- xen/arch/x86/Kconfig | 75 +--------------------------------------- xen/arch/x86/hvm/Kconfig | 73 ++++++++++++++++++++++++++++++++++++++ 2 files changed, 74 insertions(+), 74 deletions(-) create mode 100644 xen/arch/x86/hvm/Kconfig