From: Xenia Ragiadakou <burzalod...@gmail.com>

Provide the user with configuration control over the cpu virtualization support
in Xen by making SVM and VMX options user selectable.

To preserve the current default behavior, both options depend on HVM and
default to Y.

To prevent users from unknowingly disabling virtualization support, make the
controls user selectable only if EXPERT is enabled.
Also make INTEL_IOMMU/AMD_IOMMU options dependant on VMX/SVM options.

No functional change intended.

Signed-off-by: Xenia Ragiadakou <burzalod...@gmail.com>
Signed-off-by: Sergiy Kibrik <sergiy_kib...@epam.com>
---
 xen/arch/x86/Kconfig            | 18 ++++++++++++++++--
 xen/drivers/passthrough/Kconfig |  4 ++--
 2 files changed, 18 insertions(+), 4 deletions(-)

diff --git a/xen/arch/x86/Kconfig b/xen/arch/x86/Kconfig
index 6f06d3baa5..98a6f8d877 100644
--- a/xen/arch/x86/Kconfig
+++ b/xen/arch/x86/Kconfig
@@ -121,10 +121,24 @@ config HVM
          If unsure, say Y.
 
 config SVM
-       def_bool y if HVM
+       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 VMX
-       def_bool y if HVM
+       bool "Intel VT-x" if EXPERT
+       depends on HVM
+       default y
+       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 XEN_SHSTK
        bool "Supervisor Shadow Stacks"
diff --git a/xen/drivers/passthrough/Kconfig b/xen/drivers/passthrough/Kconfig
index 864fcf3b0c..5f53639c2d 100644
--- a/xen/drivers/passthrough/Kconfig
+++ b/xen/drivers/passthrough/Kconfig
@@ -39,7 +39,7 @@ endif
 
 config AMD_IOMMU
        bool "AMD IOMMU" if EXPERT
-       depends on X86
+       depends on X86 && SVM
        default y
        help
          Enables I/O virtualization on platforms that implement the
@@ -51,7 +51,7 @@ config AMD_IOMMU
 
 config INTEL_IOMMU
        bool "Intel VT-d" if EXPERT
-       depends on X86
+       depends on X86 && VMX
        default y
        help
          Enables I/O virtualization on platforms that implement the
-- 
2.25.1


Reply via email to