virtualization.lists.linux-foundation.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] Move KVM, paravirt, lguest, VMI and Xen under arch-level Virtualization option
@ 2007-07-20  4:22 Rusty Russell
  0 siblings, 0 replies; 8+ messages in thread
From: Rusty Russell @ 2007-07-20  4:22 UTC (permalink / raw)
  To: lkml - Kernel Mailing List, Linus Torvalds; +Cc: Andi Kleen, virtualization

Any objections?

Rusty.
===
Having KVM appear in the middle of "drivers" is kinda strange, and
having it alone under a menu called "virtualization" doubly so.

1) Move the "Virtualization" menu into the arch-specific i386 and
   x86-64 Kconfig.
2) Add a help message to the menu.
3) Move CONFIG_PARAVIRT under CONFIG_VIRTUALIZATION
4) Move lguest into same menu.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>

diff -r decd4a43335a arch/i386/Kconfig
--- a/arch/i386/Kconfig	Fri Jul 20 13:49:20 2007 +1000
+++ b/arch/i386/Kconfig	Fri Jul 20 14:05:56 2007 +1000
@@ -210,17 +210,55 @@ config X86_ES7000
 
 endchoice
 
+config ACPI_SRAT
+	bool
+	default y
+	depends on ACPI && NUMA && (X86_SUMMIT || X86_GENERICARCH)
+	select ACPI_NUMA
+
+config HAVE_ARCH_PARSE_SRAT
+       bool
+       default y
+       depends on ACPI_SRAT
+
+config X86_SUMMIT_NUMA
+	bool
+	default y
+	depends on NUMA && (X86_SUMMIT || X86_GENERICARCH)
+
+config X86_CYCLONE_TIMER
+	bool
+	default y
+	depends on X86_SUMMIT || X86_GENERICARCH
+
+config ES7000_CLUSTERED_APIC
+	bool
+	default y
+	depends on SMP && X86_ES7000 && MPENTIUMIII
+
+source "arch/i386/Kconfig.cpu"
+
+menuconfig VIRTUALIZATION
+	bool "Virtualization"
+	default y
+	help
+	  Virtualization is a way of running multiple Operating Systems on
+	  the same machine.  There are several different virtualization
+	  technologies in i386 Linux, including KVM, lguest, VMI and Xen.
+	  If in doubt say Y and examine the sub-options.
+
+if VIRTUALIZATION
 config PARAVIRT
-	bool "Paravirtualization support (EXPERIMENTAL)"
-	depends on EXPERIMENTAL
+	bool "Paravirtualization support"
 	depends on !(X86_VISWS || X86_VOYAGER)
 	help
-	  Paravirtualization is a way of running multiple instances of
-	  Linux on the same machine, under a hypervisor.  This option
-	  changes the kernel so it can modify itself when it is run
-	  under a hypervisor, improving performance significantly.
+	  Paravirtualization enables Linux to detect when it is running
+	  as a guest operating system under a hypervisor: it will
+	  modify itself, improving performance significantly.
 	  However, when run without a hypervisor the kernel is
 	  theoretically slower.  If in doubt, say N.
+
+source "drivers/kvm/Kconfig"
 
 source "arch/i386/xen/Kconfig"
 
@@ -233,33 +271,9 @@ config VMI
 	  at the moment), by linking the kernel to a GPL-ed ROM module
 	  provided by the hypervisor.
 
-config ACPI_SRAT
-	bool
-	default y
-	depends on ACPI && NUMA && (X86_SUMMIT || X86_GENERICARCH)
-	select ACPI_NUMA
-
-config HAVE_ARCH_PARSE_SRAT
-       bool
-       default y
-       depends on ACPI_SRAT
-
-config X86_SUMMIT_NUMA
-	bool
-	default y
-	depends on NUMA && (X86_SUMMIT || X86_GENERICARCH)
-
-config X86_CYCLONE_TIMER
-	bool
-	default y
-	depends on X86_SUMMIT || X86_GENERICARCH
-
-config ES7000_CLUSTERED_APIC
-	bool
-	default y
-	depends on SMP && X86_ES7000 && MPENTIUMIII
-
-source "arch/i386/Kconfig.cpu"
+source "drivers/lguest/Kconfig"
+
+endif # VIRTUALIZATION
 
 config HPET_TIMER
 	bool "HPET Timer Support"
diff -r decd4a43335a arch/x86_64/Kconfig
--- a/arch/x86_64/Kconfig	Fri Jul 20 13:49:20 2007 +1000
+++ b/arch/x86_64/Kconfig	Fri Jul 20 13:59:08 2007 +1000
@@ -760,6 +760,19 @@ config SYSVIPC_COMPAT
 
 endmenu
 
+menuconfig VIRTUALIZATION
+	bool "Virtualization"
+	default y
+	help
+	  Virtualization is a way of running multiple Operating Systems on
+	  the same machine.  There are several different virtualization
+	  technologies in Linux, but currently KVM is the only
+	  option for x86_64.  If in doubt say Y and examine the sub-options.
+
+if VIRTUALIZATION
+source "drivers/kvm/Kconfig"
+endif #VIRTUALIZATION
+
 source "net/Kconfig"
 
 source drivers/Kconfig
diff -r decd4a43335a drivers/Kconfig
--- a/drivers/Kconfig	Fri Jul 20 13:49:20 2007 +1000
+++ b/drivers/Kconfig	Fri Jul 20 14:06:03 2007 +1000
@@ -82,9 +82,5 @@ source "drivers/dma/Kconfig"
 
 source "drivers/auxdisplay/Kconfig"
 
-source "drivers/kvm/Kconfig"
-
 source "drivers/uio/Kconfig"
-
-source "drivers/lguest/Kconfig"
 endmenu
diff -r decd4a43335a drivers/kvm/Kconfig
--- a/drivers/kvm/Kconfig	Fri Jul 20 13:49:20 2007 +1000
+++ b/drivers/kvm/Kconfig	Fri Jul 20 13:55:07 2007 +1000
@@ -1,13 +1,6 @@
 #
 # KVM configuration
 #
-menuconfig VIRTUALIZATION
-	bool "Virtualization"
-	depends on X86
-	default y
-
-if VIRTUALIZATION
-
 config KVM
 	tristate "Kernel-based Virtual Machine (KVM) support"
 	depends on X86 && EXPERIMENTAL
@@ -39,5 +32,3 @@ config KVM_AMD
 	---help---
 	  Provides support for KVM on AMD processors equipped with the AMD-V
 	  (SVM) extensions.
-
-endif # VIRTUALIZATION

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2007-07-23  5:09 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <1184905342.10380.263.camel@localhost.localdomain>
2007-07-20  4:31 ` [PATCH] Move KVM, paravirt, lguest, VMI and Xen under arch-level Virtualization option Alexey Eremenko
2007-07-20  5:24 ` Avi Kivity
     [not found] ` <46A046F1.7040207@qumranet.com>
2007-07-20  6:02   ` Rusty Russell
     [not found]   ` <1184911347.10380.274.camel@localhost.localdomain>
2007-07-20  6:10     ` Zachary Amsden
2007-07-20 14:09       ` Jeff Dike
2007-07-21 15:49 ` Jan Engelhardt
     [not found] ` <Pine.LNX.4.64.0707211748320.21737@fbirervta.pbzchgretzou.qr>
2007-07-23  5:09   ` Rusty Russell
2007-07-20  4:22 Rusty Russell

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).