Re: arch/xen is a bad idea

From: Andi Kleen
Date: Thu Dec 16 2004 - 09:50:36 EST


On Thu, Dec 16, 2004 at 01:19:06PM +0000, Alan Cox wrote:
> On Iau, 2004-12-16 at 14:09, Andi Kleen wrote:
> > Also e.g. for non performance critical
> > things like changing MTRRs or debug registers it would be IMHO much
> > cleaner to just emulate the instructions (the ISA is very well
> > defined) and not change the kernel here. From a look at Ian's list
> > the majority of the changes needed for Xen actually fall into
> > this category.
>
> There are so many problems in snooping and decoding instructions it
> isn't funny. Aside from the mmap pci buffer half way through instruction

Hmm? From what I remember reading the code of the Xen hypervisor
they are already emulating a lot of instructions (e.g. take a look
at xen/arch/x86/x86_32/seg_fixup.c) Emulating some more doesn't
seem like a big issue to me.

> that will emulate type stuff there are a lot of awkward issues if you
> want to emulate multiple mtrr sets (you need PAT).

No way different from doing it with a magic interface. MTRR is exposed
to kernel subsystems (a lot of things in the service OS will want to
play with it) and to user space (with also a lot of users). The magic
interface will need to provide a full MTRR interface anyways. The
only difference would be basically how you tell the hypervisor to
change them.

[Not saying that PAT is actually needed for this, but as a general
comment:]
Also using PAT for that would be definitely a good idea, MTRRs just
have so many problems that any step away from them is a good thing.


-Andi
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/