Re: Xen & VMI?

Anthony Liguori
2007-03-06T15:04:05Z

Ingo Molnar wrote:
> * Gerd Hoffmann <kraxel@suse.de> wrote:
>
>>>> So in the end you would still have two different hypervisor ABI's,
>>>> the VMI ROM just hides that.
>>> oh, but that way i have cleverly pushed the problem out of Linux and
>>> into the VMI-ROM's domain ;) Which is all i care about.
>> Fine, so lets move kvm paravirtualitzation into vmi too (proof of
>> concept code by Anthony Liguori exists) and kill one more item on the
>> (linux) QA test matrix? (just following your arguments, not that I'm
>> confident it would actually help reducing QA effort).
>
> yes - although obviously a KVM Linux guest does not need such an
> interface - but it's a nice proof of concept to integrate other guest
> OSs into KVM.

I disagree that a KVM Linux guest does not benefit from VMI. Right now,
your KVM paravirt interface only covers CR3 target caching and apic
enhancements (neither of which I believe have made it into 2.6.21).
Inevitably, things like MMU batching will be added.

Using paravirt_ops, this is going to require new kernels for the guests.
Every new paravirtualization feature will require a new guest kernel.
With VMI, one can add these features to any 2.6.21+ guest by just
modifying the ROM (assuming a newer host). Some features will require
new VMI entry points but quite a lot will fall under the current entry
points.

Of all the hypervisors, KVM is the easiest to use VMI with. QEMU
already supports option ROM loading and Zach just made some changes to
allow a native ROM to be implemented very easily.

If we're going to use VMI for anything other than VMware, it seems to be
that KVM should be what we use it for.

Regards,

Anthony Liguori

> Ingo