Re: [PATCH v2 0/4] x86, mm: Handle large PAT bit in pud/pmd interfaces
From: Toshi Kani <hidden>
Date: 2015-07-21 14:53:12
Also in:
lkml
On Tue, 2015-07-21 at 10:05 +0200, Ingo Molnar wrote:
* Toshi Kani [off-list ref] wrote:quoted
The PAT bit gets relocated to bit 12 when PUD and PMD mappings are used. This bit 12, however, is not covered by PTE_FLAGS_MASK, which is corrently used for masking pfn and flags for all cases. Patch 1/4-2/4 make changes necessary for patch 3/4 to use P?D_PAGE_MASK. Patch 3/4 fixes pud/pmd interfaces to handle the PAT bit when PUD and PMD mappings are used. Patch 3/4 fixes /sys/kernel/debug/kernel_page_tables to show the PAT bit properly. Note, the PAT bit is first enabled in 4.2-rc1 with WT mappings.Are patches 1-3 only needed to fix /sys/kernel/debug/kernel_page_tables output, or are there other things fixed as well? The patches do not tell us any of that information ...
Patch 3 (and patch 1-2 needed for patch 3) fixes multiple pud/pmd interfaces to work properly with _PAGE_PAT_LARGE bit set. Because pmem is the only module that can create a range with this bit set with large page WT maps in 4.2, this issue has not been exposed other than the case in kernel_page_tables fixed by patch 4. Since there can be other cases in future, all patches should go to 4.2 to prevent them to happen. There is no issue in 4.1 & older since they cannot set the bit. Thanks, -Toshi -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>