All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jeremy Fitzhardinge <jeremy@goop.org>
To: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
Cc: Xen-devel <xen-devel@lists.xensource.com>,
	Keir Fraser <keir.fraser@eu.citrix.com>,
	Jan Beulich <JBeulich@novell.com>
Subject: Re: Re: Xen's use of PAT and PV guests
Date: Tue, 30 Mar 2010 11:43:06 -0700	[thread overview]
Message-ID: <4BB2463A.9090401@goop.org> (raw)
In-Reply-To: <20100330165713.GA7439@phenom.dumpdata.com>

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

  reply	other threads:[~2010-03-30 18:43 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-03-30  0:35 Xen's use of PAT and PV guests Jeremy Fitzhardinge
2010-03-30  7:44 ` Jan Beulich
2010-03-30 17:39   ` Jeremy Fitzhardinge
2010-03-30 17:59     ` Keir Fraser
2010-03-30 18:25       ` Jeremy Fitzhardinge
2010-03-30 16:57 ` Konrad Rzeszutek Wilk
2010-03-30 18:43   ` Jeremy Fitzhardinge [this message]
2010-03-31  8:26     ` Jan Beulich
2010-03-30 17:56 ` Ian Campbell
2010-03-30 21:47   ` Jeremy Fitzhardinge
2010-03-31  8:31     ` Ian Campbell
2010-03-31 16:55       ` Jeremy Fitzhardinge

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4BB2463A.9090401@goop.org \
    --to=jeremy@goop.org \
    --cc=JBeulich@novell.com \
    --cc=keir.fraser@eu.citrix.com \
    --cc=konrad.wilk@oracle.com \
    --cc=xen-devel@lists.xensource.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.