virtualization.lists.linux-foundation.org archive mirror
 help / color / mirror / Atom feed
From: Ingo Molnar <mingo@elte.hu>
To: Jeremy Fitzhardinge <jeremy@goop.org>
Cc: Chris Wright <chrisw@sous-sol.org>,
	Virtualization Mailing List <virtualization@lists.osdl.org>,
	john stultz <johnstul@us.ibm.com>,
	akpm@linux-foundation.org, tglx@linutronix.de,
	LKML <linux-kernel@vger.kernel.org>
Subject: Re: + stupid-hack-to-make-mainline-build.patch added to -mm tree
Date: Thu, 8 Mar 2007 20:54:13 +0100	[thread overview]
Message-ID: <20070308195413.GA6570@elte.hu> (raw)
In-Reply-To: <45F06720.8080901@goop.org>


* Jeremy Fitzhardinge <jeremy@goop.org> wrote:

> > While that's basically what we did in Xen, it would make more sense 
> > to build it into genapic which would give us one common abstraction 
> > to base from.  We should avoid adding pv_ops when existing 
> > infrastructure exists.
> 
> I was looking at cutting in at a much higher level.  The interface in 
> <linux/smp.h> is a good match for Xen, so I was going to investigate 
> making pv_ops at that level and see how it falls out.

yes, yes, yes. Finally someone with a clue about APIs ;-)

Basically, we want to think about the hypercall API more like a system 
call API, not like a hardware API! There will probably still be lowlevel 
details like ptes for a long time - but even those are not quite 
necessary.

And the reason is really fundamental: those system-call alike APIs are 
going to be the /most stable ones/ over time! 'Send stuff from A to B' 
or 'notify X about event Y' is /ALOT/ more stable across hardware 
variations than 'IDTs, vectors, apics or ptes'. And that is so precisely 
because these are fundamental actions that physical matter can do, and 
those do not get changed when new silicon comes out. In that sense Xen's 
hypervisor API is saner than VMI.

the most highlevel API is what UML uses today (and it clearly overdoes 
abstraction), still i was able to get basic UML performance close to 
native performance, via extending a few Linux system calls to enable the 
management of multiple sets of pagetables (each represented by a 
separate fd) via a single hypervisor-level process, and feeding back raw 
pagefault events to the hypervisor. (that was UML's SKAS concept 
combined with sys_remap_file_pages_prot() and sys_vcpu())

Now the practical problem with UML is that nobody has tried to make an 
UML native+guest 'shared kernel image', and hence it's unusable for 
distros. But there is no conceptual problem with UML's virtualization 
model.

	Ingo

  parent reply	other threads:[~2007-03-08 19:54 UTC|newest]

Thread overview: 105+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <200703060654.l266sVxr014860@shell0.pdx.osdl.net>
     [not found] ` <45ED16D2.3000202@vmware.com>
     [not found]   ` <20070306084258.GA15745@elte.hu>
     [not found]     ` <20070306084647.GA16280@elte.hu>
2007-03-06  8:55       ` + stupid-hack-to-make-mainline-build.patch added to -mm tree Zachary Amsden
2007-03-06 10:59         ` Thomas Gleixner
2007-03-06 21:07           ` Dan Hecht
2007-03-06 22:21             ` Andi Kleen
2007-03-06 21:32               ` Dan Hecht
2007-03-06 23:53             ` Thomas Gleixner
2007-03-07  0:24               ` Jeremy Fitzhardinge
2007-03-07  0:35                 ` Dan Hecht
2007-03-07  0:49                   ` Thomas Gleixner
2007-03-07  0:53                     ` Dan Hecht
2007-03-07  1:18                       ` Thomas Gleixner
2007-03-07  2:08                         ` Dan Hecht
2007-03-07  8:37                           ` Thomas Gleixner
2007-03-07 17:41                             ` Jeremy Fitzhardinge
2007-03-07 17:49                               ` Ingo Molnar
2007-03-07 18:03                                 ` James Morris
2007-03-07 18:35                                 ` Jeremy Fitzhardinge
2007-03-08  0:45                                   ` Alan Cox
2007-03-07 17:52                               ` Ingo Molnar
2007-03-07 18:28                                 ` Jeremy Fitzhardinge
2007-03-07 18:53                                   ` Thomas Gleixner
2007-03-07 18:11                               ` James Morris
2007-03-07 18:56                                 ` Thomas Gleixner
2007-03-07 19:05                                 ` Jeremy Fitzhardinge
2007-03-07 19:49                                   ` Dan Hecht
2007-03-07 20:11                                     ` Jeremy Fitzhardinge
2007-03-07 20:49                                       ` Dan Hecht
2007-03-07 21:14                                         ` Thomas Gleixner
2007-03-07 20:57                                       ` Thomas Gleixner
2007-03-07 21:02                                         ` Dan Hecht
2007-03-07 21:08                                           ` Jeremy Fitzhardinge
2007-03-07 21:19                                           ` Thomas Gleixner
2007-03-07 21:14                                             ` Dan Hecht
2007-03-07 21:21                                     ` Thomas Gleixner
2007-03-07 21:33                                       ` Dan Hecht
2007-03-07 22:05                                       ` Jeremy Fitzhardinge
2007-03-07 23:05                                         ` Thomas Gleixner
2007-03-07 23:25                                           ` Zachary Amsden
2007-03-07 23:36                                             ` Jeremy Fitzhardinge
2007-03-07 23:40                                               ` Zachary Amsden
2007-03-08 18:30                                                 ` Chris Wright
2007-03-08  0:22                                             ` Thomas Gleixner
2007-03-08  1:01                                               ` Daniel Arai
2007-03-08  1:23                                                 ` Jeremy Fitzhardinge
2007-03-08  7:02                                                   ` Thomas Gleixner
2007-03-08  7:28                                                 ` Thomas Gleixner
2007-03-08  8:01                                                   ` Zachary Amsden
2007-03-08 18:24                                                 ` Chris Wright
2007-03-08 18:44                                                   ` Daniel Arai
2007-03-08 19:14                                                     ` Chris Wright
2007-03-08 19:17                                                       ` Ingo Molnar
2007-03-08 19:42                                                   ` Jeremy Fitzhardinge
2007-03-08 19:47                                                     ` Chris Wright
2007-03-08 19:52                                                       ` Jeremy Fitzhardinge
2007-03-08 20:10                                                         ` Chris Wright
2007-03-08 20:18                                                           ` Jeremy Fitzhardinge
2007-03-08 20:23                                                             ` Chris Wright
2007-03-08 20:33                                                               ` Jeremy Fitzhardinge
2007-03-08 20:42                                                                 ` Chris Wright
2007-03-08 20:42                                                                   ` Jeremy Fitzhardinge
2007-03-08 21:45                                                                 ` Andi Kleen
2007-03-08 19:54                                                     ` Ingo Molnar [this message]
     [not found]                                             ` <20070308091019.GA19460@elte.hu>
2007-03-08 10:06                                               ` hardwired VMI crap Zachary Amsden
2007-03-08 11:09                                                 ` Thomas Gleixner
2007-03-08 20:46                                                   ` Zachary Amsden
2007-03-08 21:15                                                     ` Jeremy Fitzhardinge
2007-03-08 21:34                                                       ` Ingo Molnar
2007-03-08 21:43                                                         ` Andi Kleen
2007-03-08 23:39                                                         ` Jeremy Fitzhardinge
2007-03-08 23:55                                                           ` Zachary Amsden
2007-03-09  0:10                                                             ` Jeremy Fitzhardinge
2007-03-09  0:29                                                               ` Linus Torvalds
2007-03-09  0:22                                                             ` Daniel Walker
2007-03-09  0:28                                                             ` Thomas Gleixner
2007-03-09  0:04                                                           ` Thomas Gleixner
2007-03-09  0:44                                                             ` Jeremy Fitzhardinge
2007-03-08 22:31                                                       ` Zachary Amsden
2007-03-08 21:39                                                     ` Andi Kleen
2007-03-08 22:58                                                       ` Zachary Amsden
2007-03-08 18:35                                                 ` Chris Wright
2007-03-07 23:33                                           ` + stupid-hack-to-make-mainline-build.patch added to -mm tree Jeremy Fitzhardinge
2007-03-07 23:52                                             ` Dan Hecht
2007-03-08  0:19                                               ` Jeremy Fitzhardinge
2007-03-08  0:35                                             ` Thomas Gleixner
2007-03-08  0:38                                               ` Jeremy Fitzhardinge
2007-03-07 20:40                               ` Thomas Gleixner
2007-03-07 21:07                                 ` Jeremy Fitzhardinge
2007-03-07 21:40                                   ` Thomas Gleixner
2007-03-07 21:34                                     ` Dan Hecht
2007-03-07 22:14                                       ` Thomas Gleixner
2007-03-07 22:17                                         ` Zachary Amsden
2007-03-07 22:31                                           ` Thomas Gleixner
2007-03-07 22:28                                             ` Dan Hecht
2007-03-08  8:01                                   ` Ingo Molnar
2007-03-08  8:15                                     ` Keir Fraser
2007-03-08  8:41                                     ` Jeremy Fitzhardinge
2007-03-08 10:26                                     ` Rusty Russell
2007-03-07 21:42                                 ` Dan Hecht
2007-03-07 22:07                                   ` Thomas Gleixner
2007-03-07  5:10                     ` Jeremy Fitzhardinge
2007-03-07  0:40                 ` Thomas Gleixner
2007-03-07  0:42               ` Dan Hecht
2007-03-07  1:22                 ` Thomas Gleixner
2007-03-07  1:44                   ` Dan Hecht
2007-03-07  7:48                     ` Thomas Gleixner

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=20070308195413.GA6570@elte.hu \
    --to=mingo@elte.hu \
    --cc=akpm@linux-foundation.org \
    --cc=chrisw@sous-sol.org \
    --cc=jeremy@goop.org \
    --cc=johnstul@us.ibm.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=tglx@linutronix.de \
    --cc=virtualization@lists.osdl.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 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).