[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <55B11B4D0200007800094AE9@prv-mh.provo.novell.com>
Date: Thu, 23 Jul 2015 08:50:21 -0600
From: "Jan Beulich" <JBeulich@...e.com>
To: "Toshi Kani" <toshi.kani@...com>
Cc: <peterz@...radead.org>, <mingo@...nel.org>, <x86@...nel.org>,
<tglx@...utronix.de>, <bp@...e.de>, <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH] x86, pat: Add comments to cachemode translation
tables
>>> On 23.07.15 at 16:27, <toshi.kani@...com> wrote:
> On Thu, 2015-07-23 at 00:42 -0600, Jan Beulich wrote:
>> >
>> > > > On 22.07.15 at 20:06, <toshi.kani@...com> wrote:
>> > Add comments to the cachemode translation tables to clarify that
>> > the default values are set as minimal supported mode, which are
>> > necessary to handle WC and WT fallback to UC- when they are not
>> > enabled.
>>
>> Wait - shouldn't WT fall back to UC (so to not be affected by WC
>> MTRR settings)?
>
> Well, when MTRR is set to WC, WT will become UC. So, it is not safe to
> start with.
Hmm, considering how my question was meant, your reply looks
contradictory to me. What I was talking about is the table as it is
in RC3, i.e. WT mapping to PAGE_PCD (matching WC and
UC_MINUS). I.e. if a page is mapped WT (i.e. UC-) and the
MTRRs for it say WC, then the result will be WC. Whereas if
WT translated to PAGE_PWT|PAGE_PCD (i.e. matching UC), an
MTRR setting of WC would have no effect - the resulting type
would still be UC.
> I know Luis is driving to support UC. When UC can be used for both regular
> memory and IO memory, yes, it can be changed to fall back to UC. At this
> point, however, UC cannot be set to regular memory. See
> reserve_ram_pages_type().
With the above in mind, that's a problem then I would say.
Yet no matter whether UC can't be expressed as an
attribute on a page, what gets stored in the page table
entries should, together with how PAT is set, result in
something that doesn't weaken the requested memory
type. I.e. if WT was requested, the end result shouldn't
be WC. Yet any representable type may still be mapped to
UC (as being the strictest one possible), and hence if WT
can't be expressed it should be made UC.
Jan
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists