Re: Xen & VMI?

Ingo Molnar
2007-03-06T09:27:09Z

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

> You could come up with some shim layer which makes the two interfaces
> appear similar, and you could spell the name of that shim "VMI". Or
> you could call it "paravirt_ops", which is the name we chose. And you
> could implement the interface to that layer as a binary ABI, or you
> could make it a normal source-level Linux kernel interface, which is
> what we chose to do.

i think you are missing my point.

paravirt_ops is a Linux-internal abstraction that tries to make our life
easier but it has no relevance whatsoever to an external hypervisor - be
that Xen, VMWare/ESX or Windows/Longhorn.

What matters is the /ABI/ that the hypervisor uses to talk to a Linux
guest. In the VMWare/ESX case that's VMI. In the Xen case that's the
hypercall page call-table ABI or the legacy int $0x82 ABI.

My suggestion would be for Linux to make only a /single/ external ABI
promise: VMI. (and we can extend it with higher-level paravirt ops,
etc.)

paravirt_ops has ZERO relevance here... Anyone who suggests that
paravirt_ops somehow magically hides the ABIs that are behind it (and
its effects on Linux) is smoking something real funny ;-)

Ingo