xen-devel
Re: [Xen-devel] [PATCH 0/2] MTRR/PAT virtualization
The second patch is a bit of a hack-and-slash job. New memory-type
virtualisation code should go in a new file, instead of being put in host
MTRR management files (which are mostly unmodified from Linux anyway, and
shouldn't deviate more than necessary). There are various other one-line
changes in various MTRR source files that are unexplained (e.g., mask
changes from |0xf00 to |0x7ff). Initialisation of guest MTRR state will need
to be moved to hvmloader -- we do not call setvcpucontext for HVM guests any
more, so the current hack won't work with current xen-unstable. Coding style
needs cleaning up (looks like there is some spaces vs. tabs mixing up going
on).
-- Keir
On 8/10/07 08:34, "Su, Disheng" <disheng.su@xxxxxxxxx> wrote:
> Hi,
> The following 2 patches add basic MTRR/PAT support into
> hypervisor. When vt-d enabled, direct IO and RAM
> could be mapped to different cache attribute, such as UC or WC, which
> will bring some trouble.
> xen.patch: some data structures of MTRR in xen are exported.
> mtrr_pat.patch: The basic idea is listed below:
> a. MTRR/PAT MSRs are per vcpu. The value of guest MTRR is
> initialized in host, after guest E820 table is build. The value of guest
> PAT is initialized as default. The host PAT is initialized to cover all
> the page attributes.
> b. The guest page attribute is virtualized through shadow page
> attribute. First, get the effective guest page attribute, by calculating
> from the combination of guest MTRR/PAT. Then the shadow page attribute
> is calculated from effective guest page attribute and host MTRR. If
> conflict occurs(e.g effective guest page attribute is WB, host MTRR of
> this range is UC, can't set this page attribute as guest required), set
> this range as UC. Some lookup tables are added to accelerate above
> procedure.
>
> Signed-off-by: Disheng Su <disheng.su@xxxxxxxxx>
>
> Best Regards,
> Disheng, Su
>
> _______________________________________________
> Xen-devel mailing list
> Xen-devel@xxxxxxxxxxxxxxxxxxx
> http://lists.xensource.com/xen-devel
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|
|
|