From: Alan Cox <alan@lxorguk.ukuu.org.uk>
To: Joel Becker <Joel.Becker@oracle.com>
Cc: Ingo Molnar <mingo@elte.hu>, Steven Rostedt <rostedt@goodmis.org>,
George Dunlap <george.dunlap@eu.citrix.com>,
David Miller <davem@davemloft.net>,
"jeremy@goop.org" <jeremy@goop.org>,
Dan Magenheimer <dan.magenheimer@oracle.com>,
"avi@redhat.com" <avi@redhat.com>,
"xen-devel@lists.xensource.com" <xen-devel@lists.xensource.com>,
"x86@kernel.org" <x86@kernel.org>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
Keir Fraser <Keir.Fraser@eu.citrix.com>,
"torvalds@linux-foundation.org" <torvalds@linux-foundation.org>,
"gregkh@suse.de" <gregkh@suse.de>,
"kurt.hackel@oracle.com" <kurt.hackel@oracle.com>,
Ian Pratt <Ian.Pratt@eu.citrix.com>,
"xen-users@lists.xensource.com" <xen-users@lists.xensource.com>,
ksrinivasan <ksrinivasan@novell.com>,
"EAnderson@novell.com" <EAnderson@novell.com>,
"wimcoekaerts@wimmekes.net" <wimcoekaerts@wimmekes.net>,
Stephen Spector <stephen.spector@citrix.com>,
"jens.axboe@oracle.com" <jens.axboe@oracle.com>,
"npiggin@suse.de" <npiggin@suse.de>
Subject: Re: Merge Xen (the hypervisor) into Linux
Date: Wed, 3 Jun 2009 08:59:05 +0100 [thread overview]
Message-ID: <20090603085905.0d773cb7@lxorguk.ukuu.org.uk> (raw)
In-Reply-To: <20090603010000.GE31976@mail.oracle.com>
> The biggest reason I personally want Xen to be in mainline is
> PVM. Dropping PVM is, to me, pretty much saying "let's merge Xen
> without taking the useful parts."
PVM is and has been for a long time a messaging parallel machine. Can you
not misuse the abbreviation in confusing ways (especially in email I read
in the morning ;))
Merging just hardware assisted vm support initially might be a perfectly
sensible path.
> Like Chris said, if we have technical hurdles for Xen to cross,
> let's get them out in the open and fixed. If previous Xen developer
> interaction has left a bad taste in people's mouths, then the current
> crew has to make it up to us. But we have to be willing to notice
> they're doing so.
Start by changing the mentality. Right now much of the patched code looks
like "We made a decision years ago when creating Xen. Now we need to
force that code we wrote into Linux somehow".
Stuff gets merged a lot better if the thinking is "how do we make the
minimal changes to the existing kernel, cleanly and with minimal
inter-relationships". Only after that do you worry about whether
the existing in kernel interfaces are right.
There is a simple reason for this: Changing an interface in the kernel is
a consensus finding process around all visible users of the interface.
It's much easier to do that as a follow up. That way you can bench
alternatives, test if it harms any of the users and merge change sets
that span all the various users of the interface in one go.
It's also frequently the case that when you have a simple clean interface
that doesn't fit some in tree users it becomes blindly obvious what it
should look like.
So I would suggest the path is
- Use existing interfaces
- Merge chunks of the Xen code without worrying too much about performance
in Xen but worry in detail about bare metal performance
- Don't worry about "hard" problems initially - eg with PAE just use the
paravirt CPUID hook and deny having PAE to begin with
- Where there isn't a clean simple interface try as hard as possible to
build some glue code using existing interfaces in the kernel
When it works, doesn't harm bare metal performance and is merged then go
back and worry about the harder stuff, optimisation and fine tuning. It
doesn't even need to be able to run all guests or all configurations
initially.
Also please can folks get out of the "how do we merge Xen" mentality into
the "How do we create dom0 functionality for Xen in Linux" - don't
pre-suppose the existing implementation is right.
Alan
next prev parent reply other threads:[~2009-06-03 8:03 UTC|newest]
Thread overview: 104+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-05-12 23:25 [GIT PULL] Xen APIC hooks (with io_apic_ops) Jeremy Fitzhardinge
2009-05-12 23:25 ` [PATCH 01/17] xen/dom0: handle acpi lapic parsing in Xen dom0 Jeremy Fitzhardinge
2009-05-12 23:25 ` [PATCH 02/17] x86: add io_apic_ops to allow interception Jeremy Fitzhardinge
2009-05-25 3:54 ` Ingo Molnar
2009-05-27 7:17 ` Jeremy Fitzhardinge
2009-05-12 23:25 ` [PATCH 03/17] xen: implement io_apic_ops Jeremy Fitzhardinge
2009-05-12 23:25 ` [PATCH 04/17] xen: create dummy ioapic mapping Jeremy Fitzhardinge
2009-05-12 23:25 ` [PATCH 05/17] xen: implement pirq type event channels Jeremy Fitzhardinge
2009-05-12 23:25 ` [PATCH 06/17] x86/io_apic: add get_nr_irqs_gsi() Jeremy Fitzhardinge
2009-05-12 23:25 ` [PATCH 07/17] xen/apic: identity map gsi->irqs Jeremy Fitzhardinge
2009-05-12 23:25 ` [PATCH 08/17] xen: direct irq registration to pirq event channels Jeremy Fitzhardinge
2009-05-12 23:25 ` [PATCH 09/17] xen: bind pirq to vector and event channel Jeremy Fitzhardinge
2009-05-12 23:25 ` [PATCH 10/17] xen: pre-initialize legacy irqs early Jeremy Fitzhardinge
2009-05-12 23:25 ` [PATCH 11/17] xen: don't setup acpi interrupt unless there is one Jeremy Fitzhardinge
2009-05-12 23:25 ` [PATCH 12/17] xen: use acpi_get_override_irq() to get triggering for legacy irqs Jeremy Fitzhardinge
2009-05-12 23:25 ` [PATCH 13/17] xen: initialize irq 0 too Jeremy Fitzhardinge
2009-05-12 23:25 ` [PATCH 14/17] xen: dynamically allocate irq & event structures Jeremy Fitzhardinge
2009-05-12 23:25 ` [PATCH 15/17] xen: set pirq name to something useful Jeremy Fitzhardinge
2009-05-12 23:25 ` [PATCH 16/17] xen: fix legacy irq setup, make ioapic-less machines work Jeremy Fitzhardinge
2009-05-12 23:25 ` [PATCH 17/17] xen: disable MSI Jeremy Fitzhardinge
2009-05-19 12:35 ` [GIT PULL] Xen APIC hooks (with io_apic_ops) Ingo Molnar
2009-05-20 17:57 ` Jeremy Fitzhardinge
2009-05-25 4:10 ` Ingo Molnar
2009-05-26 12:46 ` [Xen-devel] " George Dunlap
2009-05-26 18:26 ` Avi Kivity
2009-05-26 19:18 ` Dan Magenheimer
2009-05-26 19:41 ` Avi Kivity
2009-05-28 0:13 ` Ingo Molnar
2009-05-28 0:49 ` Jeremy Fitzhardinge
2009-05-28 3:47 ` Dan Magenheimer
2009-05-28 14:26 ` George Dunlap
2009-05-29 0:45 ` Xen is a feature Jeremy Fitzhardinge
2009-05-29 1:27 ` Greg KH
2009-05-29 4:05 ` David Miller
2009-05-29 6:37 ` Jaswinder Singh Rajput
2009-05-29 6:51 ` David Miller
2009-05-29 12:01 ` George Dunlap
2009-05-29 14:14 ` Pasi Kärkkäinen
2009-05-29 21:29 ` David Miller
[not found] ` <87tz33ep1b.fsf@basil.nowhere.org>
2009-05-29 21:31 ` [Xen-devel] " Jeremy Fitzhardinge
2009-05-29 23:09 ` Nakajima, Jun
2009-05-29 23:26 ` Jeremy Fitzhardinge
2009-06-02 15:23 ` Thomas Gleixner
2009-06-02 16:41 ` George Dunlap
2009-06-02 17:28 ` Chris Friesen
2009-06-02 17:46 ` Linus Torvalds
2009-06-02 18:02 ` Linus Torvalds
2009-06-02 18:59 ` Avi Kivity
2009-06-07 9:13 ` Ingo Molnar
2009-06-07 10:01 ` Avi Kivity
2009-06-07 10:35 ` Ingo Molnar
2009-06-07 12:46 ` Avi Kivity
2009-06-07 13:02 ` Jaswinder Singh Rajput
2009-06-04 14:02 ` [Xen-users] " Thomas Goirand
2009-06-02 18:59 ` Thomas Gleixner
2009-06-03 19:49 ` Bill Davidsen
2009-06-03 20:20 ` Thomas Gleixner
2009-06-03 22:37 ` Bill Davidsen
2009-06-03 23:29 ` Frans Pop
2009-06-04 13:21 ` George Dunlap
2009-06-04 15:10 ` Theodore Tso
2009-06-04 15:31 ` Chris Friesen
2009-06-05 4:14 ` Bill Davidsen
2009-06-05 4:55 ` Chris Friesen
2009-06-02 22:40 ` Steven Rostedt
2009-06-02 23:28 ` Merge Xen (the hypervisor) into Linux Ingo Molnar
2009-06-03 0:00 ` Dan Magenheimer
2009-06-03 0:32 ` Thomas Gleixner
2009-06-03 2:43 ` Theodore Tso
2009-06-03 3:42 ` Steven Rostedt
2009-06-03 4:49 ` Dan Magenheimer
2009-06-03 4:58 ` David Miller
2009-06-03 5:07 ` Steven Rostedt
2009-06-03 5:22 ` Steven Rostedt
2009-06-03 12:03 ` George Dunlap
2009-06-03 19:05 ` Theodore Tso
[not found] ` <4A27CF94.1050903@gmx.de>
2009-06-04 14:03 ` [Xen-users] " Steven Rostedt
2009-06-03 7:28 ` Gerd Hoffmann
2009-06-03 8:47 ` Alan Cox
2009-06-03 9:09 ` Gerd Hoffmann
2009-06-03 9:20 ` Keir Fraser
2009-06-03 11:15 ` Theodore Tso
2009-06-03 11:39 ` Keir Fraser
2009-06-03 11:41 ` Gerd Hoffmann
2009-06-03 1:00 ` Joel Becker
2009-06-03 2:00 ` david
2009-06-03 7:59 ` Alan Cox [this message]
2009-06-03 8:07 ` Christian Tramnitz
2009-06-04 18:53 ` Linus Torvalds
2009-06-05 0:09 ` Samuel Thibault
2009-06-05 0:18 ` David Miller
2009-06-05 0:54 ` Linus Torvalds
2009-06-03 17:31 ` Chris Friesen
2009-06-03 17:36 ` Alan Cox
2009-06-02 23:41 ` Xen is a feature Thomas Gleixner
2009-05-30 2:19 ` [Xen-devel] " Andy Burns
2009-05-26 21:19 ` [Xen-devel] Re: [GIT PULL] Xen APIC hooks (with io_apic_ops) Gerd Hoffmann
2009-05-27 10:14 ` George Dunlap
2009-05-24 20:10 ` Avi Kivity
2009-05-25 3:51 ` Ingo Molnar
2009-05-25 4:55 ` Avi Kivity
2009-05-25 5:06 ` Ingo Molnar
2009-05-25 5:12 ` Avi Kivity
2009-05-25 5:19 ` Ingo Molnar
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=20090603085905.0d773cb7@lxorguk.ukuu.org.uk \
--to=alan@lxorguk.ukuu.org.uk \
--cc=EAnderson@novell.com \
--cc=Ian.Pratt@eu.citrix.com \
--cc=Joel.Becker@oracle.com \
--cc=Keir.Fraser@eu.citrix.com \
--cc=avi@redhat.com \
--cc=dan.magenheimer@oracle.com \
--cc=davem@davemloft.net \
--cc=george.dunlap@eu.citrix.com \
--cc=gregkh@suse.de \
--cc=jens.axboe@oracle.com \
--cc=jeremy@goop.org \
--cc=ksrinivasan@novell.com \
--cc=kurt.hackel@oracle.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@elte.hu \
--cc=npiggin@suse.de \
--cc=rostedt@goodmis.org \
--cc=stephen.spector@citrix.com \
--cc=torvalds@linux-foundation.org \
--cc=wimcoekaerts@wimmekes.net \
--cc=x86@kernel.org \
--cc=xen-devel@lists.xensource.com \
--cc=xen-users@lists.xensource.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
all inboxes | Powered by JetHome®