All of lore.kernel.org
 help / color / mirror / Atom feed
From: Rusty Russell <rusty@rustcorp.com.au>
To: Andi Kleen <ak@suse.de>
Cc: virtualization@lists.linux-foundation.org,
	lkml - Kernel Mailing List <linux-kernel@vger.kernel.org>,
	Anthony Liguori <aliguori@us.ibm.com>,
	Chris Wright <chrisw@sous-sol.org>
Subject: Re: [PATCH 3/3] Time to make CONFIG_PARAVIRT non-experimental.
Date: Wed, 19 Sep 2007 11:53:17 +1000	[thread overview]
Message-ID: <1190166797.7262.193.camel@localhost.localdomain> (raw)
In-Reply-To: <200709182352.25118.ak@suse.de>

On Tue, 2007-09-18 at 23:52 +0200, Andi Kleen wrote:
> On Tuesday 18 September 2007 23:34, Rusty Russell wrote:
> > How about a "select" based on Xen, lguest or VMI?  There's no other
> > reason to enable it, after all.
> 
> I did an patch to do that recently because  the current setup
> is indeed unobvious.
> 
> But I had to drop it again because 
> it ended up with Kconfig warnings. about undefined symbols
> on x86-64. The problem is that lguest
> is visible in Kconfig for all architectures and it warns
> if you select something that doesn't exist on all architectures.

I think that's fixed as a side-effect of this cleanup.  At least, it
works for me on x86-64.  Patch below: if you agree, I'll re-xmit all
three.

> > > Also I would still consider it experimental.
> >
> > After 9 months in mainline and three kernel versions, 
> 
> Well it changed a lot each release.

Well, the biggest change was the patching code getting enhanced in
2.6.22 (to cover all calls, not just 5).  The 22 -> 23 changes were
fairly trivial.

So I think 2.6.24 is a reasonable time to remove EXPERIMENTAL.

> > I'd hope not. 
> > It's been pretty damn stable (ok, you broke it once, but maybe that's
> > because you consider it experimental).
> 
> Is there a significant user base? 

It's enabled in Ubuntu Feisty (2.6.20).

> At least the Xen port seems to have specific requirements
> and essentially only work on xen-unstable (?) [or at least
> some very new Xen version] which probably very few
> people use.

Sure, and that might well still be experimental (Jeremy?).  But that's
not CONFIG_PARAVIRT.

Hope that helps,
Rusty.
==
Andi points out that PARAVIRT is an option best selected when needed.

We introduce PARAVIRT_GUEST for the menu itself, and select PARAVIRT
if they ask for anything which needs it.  This also makes PARAVIRT
non-experimental.

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

diff -r 8efa5fdb22d8 arch/i386/Kconfig
--- a/arch/i386/Kconfig	Wed Sep 19 11:23:18 2007 +1000
+++ b/arch/i386/Kconfig	Wed Sep 19 11:33:59 2007 +1000
@@ -214,24 +214,30 @@ config X86_ES7000
 
 endchoice
 
-menuconfig PARAVIRT
+config PARAVIRT
+	bool
+	depends on !(X86_VISWS || X86_VOYAGER)
+	help
+	  This changes the kernel so it can modify itself when it is run
+	  under a hypervisor, potentially improving performance significantly
+	  over full virtualization.  However, when run without a hypervisor
+	  the kernel is theoretically slower and slightly larger.
+
+menuconfig PARAVIRT_GUEST
-	bool "Paravirtualized guest support (EXPERIMENTAL)"
-	depends on EXPERIMENTAL
+	bool "Paravirtualized guest 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.
-	  However, when run without a hypervisor the kernel is
-	  theoretically slower.  If in doubt, say N.
-
-if PARAVIRT
+	help
+	  Say Y here to get to see options related to running Linux under
+	  various hypervisors.  This option alone does not add any kernel code.
+
+	  If you say N, all options in this submenu will be skipped and disabled.
+
+if PARAVIRT_GUEST
 
 source "arch/i386/xen/Kconfig"
 
 config VMI
 	bool "VMI Guest support"
+	select PARAVIRT
 	help
 	  VMI provides a paravirtualized interface to the VMware ESX server
 	  (it could be used by other hypervisors in theory too, but is not
@@ -239,6 +246,7 @@ config VMI
 
 config LGUEST_GUEST
 	bool "Lguest guest support"
+	select PARAVIRT
 	depends on !X86_PAE
 	help
 	  Lguest is a tiny in-kernel hypervisor.  Selecting this will
diff -r 8efa5fdb22d8 arch/i386/xen/Kconfig
--- a/arch/i386/xen/Kconfig	Wed Sep 19 11:23:18 2007 +1000
+++ b/arch/i386/xen/Kconfig	Wed Sep 19 11:25:07 2007 +1000
@@ -4,6 +4,7 @@
 
 config XEN
 	bool "Xen guest support"
+	select PARAVIRT
 	depends on X86_CMPXCHG && X86_TSC && !NEED_MULTIPLE_NODES
 	help
 	  This is the Linux Xen port.  Enabling this will allow the



  parent reply	other threads:[~2007-09-19  1:54 UTC|newest]

Thread overview: 53+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-09-14  5:17 [PATCH 1/3] Normalize config options for guest support Rusty Russell
2007-09-14  5:18 ` [PATCH 2/3] Consolidate host virtualization support under Virtualization menu Rusty Russell
2007-09-14  5:21   ` [PATCH 3/3] Time to make CONFIG_PARAVIRT non-experimental Rusty Russell
2007-09-14  5:21   ` Rusty Russell
2007-09-18 10:57     ` Andi Kleen
2007-09-18 10:57     ` Andi Kleen
2007-09-18 20:04       ` Charles N Wyble
2007-09-18 20:04       ` Charles N Wyble
2007-09-18 20:20         ` Andi Kleen
2007-09-18 20:20         ` Andi Kleen
2007-09-18 20:27           ` Charles N Wyble
2007-09-18 20:27           ` Charles N Wyble
2007-09-18 20:41             ` Andi Kleen
2007-09-18 20:41             ` Andi Kleen
2007-09-20 15:45             ` Satyam Sharma
2007-09-20 16:09               ` Charles N Wyble
2007-09-20 16:47                 ` Satyam Sharma
2007-09-20 16:47                 ` Satyam Sharma
2007-09-20 16:09               ` Charles N Wyble
2007-09-20 15:45             ` Satyam Sharma
2007-09-18 21:34       ` Rusty Russell
2007-09-18 21:52         ` Andi Kleen
2007-09-18 21:52         ` Andi Kleen
2007-09-19  1:53           ` Rusty Russell
2007-09-19  1:53           ` Rusty Russell [this message]
2007-09-19  3:59           ` Jeremy Fitzhardinge
2007-09-19  3:59           ` Jeremy Fitzhardinge
2007-09-19 10:43             ` Ian Campbell
2007-09-19 10:43               ` Ian Campbell
2007-09-18 21:34       ` Rusty Russell
2007-09-14 16:19   ` [PATCH 2/3] Consolidate host virtualization support under Virtualization menu Randy Dunlap
2007-09-14 20:01     ` Jan Engelhardt
2007-09-14 20:01     ` Jan Engelhardt
2007-09-15  3:05     ` Rusty Russell
2007-09-15  3:05     ` Rusty Russell
2007-09-15  8:49       ` Alexey Eremenko
2007-09-16  7:43         ` Rusty Russell
2007-09-16  7:43         ` Rusty Russell
2007-09-16 14:56           ` Jeremy Fitzhardinge
2007-09-16 14:56           ` Jeremy Fitzhardinge
2007-09-17 19:31             ` Zachary Amsden
2007-09-17 19:31             ` Zachary Amsden
2007-09-17 23:30               ` Charles N Wyble
2007-09-17 23:30                 ` Charles N Wyble
2007-09-18  0:18                 ` Jeremy Fitzhardinge
2007-09-18 20:11                   ` Charles N Wyble
2007-09-19  9:38                     ` Alexey Eremenko
2007-09-19  9:38                     ` Alexey Eremenko
2007-09-18 20:11                   ` Charles N Wyble
2007-09-18  0:18                 ` Jeremy Fitzhardinge
2007-09-15  8:49       ` Alexey Eremenko
2007-09-14 16:19   ` Randy Dunlap
2007-09-14  5:18 ` 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=1190166797.7262.193.camel@localhost.localdomain \
    --to=rusty@rustcorp.com.au \
    --cc=ak@suse.de \
    --cc=aliguori@us.ibm.com \
    --cc=chrisw@sous-sol.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=virtualization@lists.linux-foundation.org \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.