Re: Paravirtualization on VMware's Platform [VMI].

Ingo Molnar
2009-09-20T07:43:32Z

* Alok Kataria <akataria@vmware.com> wrote:

> Here is the patch which actually removes the vmi code.
>
> Signed-off-by: Alok N Kataria <akataria@vmware.com>
> ---
>
> Documentation/kernel-parameters.txt | 2
> arch/x86/Kconfig | 10
> arch/x86/include/asm/vmi.h | 269 ----------
> arch/x86/include/asm/vmi_time.h | 98 ----
> arch/x86/kernel/Makefile | 1
> arch/x86/kernel/setup.c | 7
> arch/x86/kernel/smpboot.c | 9
> arch/x86/kernel/vmi_32.c | 913 -----------------------------------
> arch/x86/kernel/vmiclock_32.c | 321 ------------
> 9 files changed, 1 insertions(+), 1629 deletions(-)
> delete mode 100644 arch/x86/include/asm/vmi.h
> delete mode 100644 arch/x86/include/asm/vmi_time.h
> delete mode 100644 arch/x86/kernel/vmi_32.c
> delete mode 100644 arch/x86/kernel/vmiclock_32.c

The thing is, the overwhelming majority of vmware users dont benefit
from hardware features like nested page tables yet. So this needs to be
done _way_ more carefully, with a proper sunset period of a couple of
kernel cycles.

This is as if Intel had sent a patch to desupport say Core2
optimizations, now that Nehalem is out.

'Virtual hardware' is no different in this respect: until users benefit
from something we want to keep it, even if the vendor would like to sell
new hardware and would like the new hardware to have an edge over the
installed base.

If we were able to rip out all (or most) of paravirt from arch/x86 it
would be tempting for other technical reasons - but the patch above is
well localized.

Ingo