public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Rusty Russell <rusty@rustcorp.com.au>
To: lkml - Kernel Mailing List <linux-kernel@vger.kernel.org>,
	Linus Torvalds <torvalds@linux-foundation.org>
Cc: Andi Kleen <ak@muc.de>, Jeremy Fitzhardinge <jeremy@goop.org>,
	Zachary Amsden <zach@vmware.com>, Avi Kivity <avi@qumranet.com>,
	virtualization <virtualization@lists.linux-foundation.org>
Subject: [PATCH] Move KVM, paravirt, lguest, VMI and Xen under arch-level Virtualization option
Date: Fri, 20 Jul 2007 14:22:22 +1000	[thread overview]
Message-ID: <1184905342.10380.263.camel@localhost.localdomain> (raw)

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



             reply	other threads:[~2007-07-20  4:22 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-07-20  4:22 Rusty Russell [this message]
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
2007-07-20  6:02   ` Rusty Russell
2007-07-20  6:10     ` Zachary Amsden
2007-07-20 14:09       ` Jeff Dike
2007-07-21 15:49 ` Jan Engelhardt
2007-07-23  5:09   ` Rusty Russell

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1184905342.10380.263.camel@localhost.localdomain \
    --to=rusty@rustcorp.com.au \
    --cc=ak@muc.de \
    --cc=avi@qumranet.com \
    --cc=jeremy@goop.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=torvalds@linux-foundation.org \
    --cc=virtualization@lists.linux-foundation.org \
    --cc=zach@vmware.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox