Messages in this thread | | | From | Andy Lutomirski <> | Date | Wed, 10 Sep 2014 14:27:31 -0700 | Subject | Re: [PATCH v2 2/6] x86, mm, pat: Change reserve_memtype() to handle WT |
| |
On Wed, Sep 10, 2014 at 2:11 PM, Toshi Kani <toshi.kani@hp.com> wrote: > On Wed, 2014-09-10 at 14:06 -0700, Andy Lutomirski wrote: >> On Wed, Sep 10, 2014 at 1:30 PM, Toshi Kani <toshi.kani@hp.com> wrote: >> > On Wed, 2014-09-10 at 13:14 -0700, H. Peter Anvin wrote: >> >> On 09/10/2014 12:30 PM, Toshi Kani wrote: >> >> > >> >> > When WT is unavailable due to the PAT errata, it does not fail but gets >> >> > redirected to UC-. Similarly, when PAT is disabled, WT gets redirected >> >> > to UC- as well. >> >> > >> >> >> >> But on pre-PAT hardware you can still do WT. >> > >> > Yes, if we manipulates the bits directly, but such code is no longer >> > allowed for PAT systems. The PAT-based kernel interfaces won't work for >> > pre-PAT systems, and therefore requests are redirected to UC- on such >> > systems. >> > >> >> Right, the PWT bit. Forgot about that. >> >> I wonder whether it would make sense to do some followup patches to >> replace the current support for non-PAT machines with a "PAT" and >> corresponding reverse map that exactly matches the mapping when PAT is >> disabled. These patches are almost there. > > That's possible, but the only benefit is that we can enable WT on > pre-PAT systems, which I do not think anyone cares now... WB & UC work > on pre-PAT systems. WC & WT need PAT. I think this requirement is > reasonable.
It might end up being a cleanup, though. A whole bunch of rarely-exercised if (!pat_enabled) things would go away.
--Andy
| |