[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

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


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.