lkml.org 
[lkml]   [2014]   [Aug]   [22]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [Xen-devel] [PATCH RFC 1/3] x86: Make page cache mode a real type
From
Date
On Fri, 2014-08-22 at 10:24 +0100, Jan Beulich wrote:
> >>> On 21.08.14 at 11:30, <JGross@suse.com> wrote:
> > On 08/20/2014 09:26 PM, Toshi Kani wrote:
> >> On Tue, 2014-08-19 at 15:25 +0200, jgross@suse.com wrote:
> >>> --- a/arch/x86/mm/init.c
> >>> +++ b/arch/x86/mm/init.c
> >>> @@ -27,6 +27,35 @@
> >>>
> >>> #include "mm_internal.h"
> >>>
> >>> +/*
> >>> + * Tables translating between page_cache_type_t and pte encoding.
> >>> + * Minimal supported modes are defined statically, modified if more supported
> >>> + * cache modes are available.
> >>> + * Index into __cachemode2pte_tbl is the cachemode.
> >>> + * Index into __pte2cachemode_tbl are the caching attribute bits of the pte
> >>> + * (_PAGE_PWT, _PAGE_PCD, _PAGE_PAT) at index bit positions 0, 1, 2.
> >>> + */
> >>> +uint16_t __cachemode2pte_tbl[_PAGE_CACHE_MODE_NUM] = {
> >>> + [_PAGE_CACHE_MODE_WB] = 0,
> >>> + [_PAGE_CACHE_MODE_WC] = _PAGE_PWT,
> >>> + [_PAGE_CACHE_MODE_UC_MINUS] = _PAGE_PCD,
> >>> + [_PAGE_CACHE_MODE_UC] = _PAGE_PCD | _PAGE_PWT,
> >>> + [_PAGE_CACHE_MODE_WT] = _PAGE_PWT,
> >>> + [_PAGE_CACHE_MODE_WP] = _PAGE_PWT,
> >>> +};
> >>
> >> I think WT and WP should be set to _PAGE_PCD (UC_MINUS) for safe.
> >
> > Oh, you are right.
>
> Actually I suppose the original comment was about WC and WP;
> defaulting WT to _PAGE_PWT seems quite correct to me.

My comment was about WT and WP, whose cache modes are defined here but
are not supported in this patchset. _PAGE_PWT is used by WC, which has
weakly ordered writes. WT and WP have strongly ordered writes, so they
should be redirected to UC- for safe.

Thanks,
-Toshi



\
 
 \ /
  Last update: 2014-08-22 20:01    [W:0.052 / U:0.304 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site