|
|
|
|
|
|
|
|
|
|
xen-devel
Re: [Xen-devel] Re: Xen's use of PAT and PV guests
On 03/30/2010 09:57 AM, Konrad Rzeszutek Wilk wrote:
On Mon, Mar 29, 2010 at 05:35:57PM -0700, Jeremy Fitzhardinge wrote:
I'm looking again at what it will take to reconcile Xen's PAT setup with
the standard Linux one so that we can enable PAT use in pvops kernels.
Just for reference, this is the Linux vs Xen vs default PAT setups:
And this LKML is good a primer:
http://www.linuxsymposium.org/archives/OLS/Reprints-2008/pallipadi-reprint.pdf
Thanks, just what I was looking for.
Index PTE flags Linux Xen Default
0 WB WB WB
1 PWT WC WT WT
2 PCD UC- UC- UC-
3 PCD PWT UC UC UC
4 PAT WB WC WB
5 PAT PWT WC WP WT
6 PAT PCD UC- UC UC-
7 PAT PCD PWT UC UC UC
Originally I was thinking of a moderately complex scheme in which an ELF
node on the dom0 kernel could determine the system-wide Xen PAT MSR, and
then the kernel ELF notes on subsequent domains would determine whether
the PAT CPU feature flag is enabled or not.
However this has several problems:
1. it is fairly complex
2. if dom0 sets the PAT configuration to something strange, it may
completely break other PV guests entirely (since it might
effectively change the meaning of PCD+PWT globally)
How does this work on pages shared across domains? Say Guest A makes the
page WC,Dom0 makes it WB and Xen puts it in WC, and Dom0 reads does a
Write/Read/Write, but in actuallity it is a Read/Write/Write. Or is
there no danger there since the grant table pages have UC set on them?
Not sure. That would invoke undefined behaviour, I'd assume. Does Xen
keep track of memory type aliases? Grant pages don't have to be UC do
they? Pages between front and backends don't need to be (and shouldn't
be) UC.
The graphics cards (and the XServer) are the ones that come in my mind
as heavy users of having this "just right". But in most (all?) cases
they want it to be UC or better UC- so that shouldn't affect this.
Hm, I don't want to try out-guessing Linux's use of all these modes; we
need to either get it right or not try.
J
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|
|
|
|
|