From: Dave Hansen <[email protected]>

Right now, there is a "Enable paravirtualization code" option in
the "Processor Features" menu, which means Xen.  There is also a
group of host-side paravirtualization options specific to KVM
under the top-level "Virtualization" menu.

I think it makes a lot of sense to group the host and guest side
things together, especially since the top-level "Virtualization"
menu is so sparsely populated.

This creates a new hypervisor-independent arch/x86/Kconfig.virt
file, and moves the "Virtualization" menu to be defined in there.
Currently CONFIG_VIRTUALIZATION really means "host-side", so
create a new config option which matches the guest-side one, and
default its value to be what CONFIG_VIRTUALIZATION was set to.

This also removes the very counterintuitive references to
lguest/vhost code *from* kvm-specific code and removes the silly:

        depends on HAVE_KVM || X86

dependency.  It makes zero sense to have entries defined in
arch/x86 depend on x86.

Signed-off-by: Dave Hansen <[email protected]>
Cc: Borislav Petkov <[email protected]>
Cc: Dmitry Torokhov <[email protected]>
Cc: K. Y. Srinivasan <[email protected]>
Cc: Haiyang Zhang <[email protected]>
Cc: Alexander Graf <[email protected]>
Cc: Gleb Natapov <[email protected]>
Cc: Paolo Bonzini <[email protected]>
---

 linux.git-davehans/arch/x86/Kconfig      |    2 +-
 linux.git-davehans/arch/x86/Kconfig.virt |   25 +++++++++++++++++++++++++
 linux.git-davehans/arch/x86/kvm/Kconfig  |   19 -------------------
 3 files changed, 26 insertions(+), 20 deletions(-)

diff -puN arch/x86/Kconfig~x86-Kconfig-move-paravirt-under-virtualization 
arch/x86/Kconfig
--- linux.git/arch/x86/Kconfig~x86-Kconfig-move-paravirt-under-virtualization   
2014-01-13 16:09:29.785875796 -0800
+++ linux.git-davehans/arch/x86/Kconfig 2014-01-13 16:09:29.793876157 -0800
@@ -2416,6 +2416,6 @@ source "security/Kconfig"
 
 source "crypto/Kconfig"
 
-source "arch/x86/kvm/Kconfig"
+source "arch/x86/Kconfig.virt"
 
 source "lib/Kconfig"
diff -puN /dev/null arch/x86/Kconfig.virt
--- /dev/null   2013-11-27 17:20:18.337162396 -0800
+++ linux.git-davehans/arch/x86/Kconfig.virt    2014-01-13 16:09:29.793876157 
-0800
@@ -0,0 +1,25 @@
+
+menu "Virtualization"
+
+config VIRTUALIZATION
+       bool
+
+config HYPERVISOR_HOST
+       bool "Host-Side Features (Linux as the Hypervisor)"
+       default y if VIRTUALIZATION
+       ---help---
+         Say Y here to get to see options for using your Linux host to run 
other
+         operating systems inside virtual machines (guests).
+         This option alone does not add any kernel code.
+
+         If you say N, all options in this submenu will be skipped and 
disabled.
+
+if HYPERVISOR_HOST
+
+source arch/x86/kvm/Kconfig
+source drivers/vhost/Kconfig
+source drivers/lguest/Kconfig
+
+endif # HYPERVISOR_HOST
+
+endmenu # "Virtualization"
diff -puN arch/x86/kvm/Kconfig~x86-Kconfig-move-paravirt-under-virtualization 
arch/x86/kvm/Kconfig
--- 
linux.git/arch/x86/kvm/Kconfig~x86-Kconfig-move-paravirt-under-virtualization   
    2014-01-13 16:09:29.787875886 -0800
+++ linux.git-davehans/arch/x86/kvm/Kconfig     2014-01-13 16:09:29.793876157 
-0800
@@ -4,19 +4,6 @@
 
 source "virt/kvm/Kconfig"
 
-menuconfig VIRTUALIZATION
-       bool "Virtualization"
-       depends on HAVE_KVM || X86
-       default y
-       ---help---
-         Say Y here to get to see options for using your Linux host to run 
other
-         operating systems inside virtual machines (guests).
-         This option alone does not add any kernel code.
-
-         If you say N, all options in this submenu will be skipped and 
disabled.
-
-if VIRTUALIZATION
-
 config KVM
        tristate "Kernel-based Virtual Machine (KVM) support"
        depends on HAVE_KVM
@@ -93,9 +80,3 @@ config KVM_DEVICE_ASSIGNMENT
 
          If unsure, say Y.
 
-# OK, it's a little counter-intuitive to do this, but it puts it neatly under
-# the virtualization menu.
-source drivers/vhost/Kconfig
-source drivers/lguest/Kconfig
-
-endif # VIRTUALIZATION
_
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to