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.

---
v2:
 - Change p?n_pfn() to handle the PAT bit. (Juergen Gross)
 - Mask pfn and flags with P?D_PAGE_MASK. (Juergen Gross)
 - Change p?d_page_vaddr() and p?d_page() to handle the PAT bit.

---
Toshi Kani (4):
  1/4 x86/vdso32: Define PGTABLE_LEVELS to 32bit VDSO
  2/4 x86, asm: Move PUD_PAGE macros to page_types.h
  3/4 x86: Fix pud/pmd interfaces to handle large PAT bit
  4/4 x86, mm: Fix page table dump to show PAT bit

---
4fa1ff9a08c...dd58e3d52618b00dd768de1753c35611906fcbee --stat
 arch/x86/entry/vdso/vdso32/vclock_gettime.c |  2 ++
 arch/x86/include/asm/page_64_types.h        |  3 ---
 arch/x86/include/asm/page_types.h           |  3 +++
 arch/x86/include/asm/pgtable.h              | 14 +++++-----
 arch/x86/include/asm/pgtable_types.h        | 40 ++++++++++++++++++++++++++---
 arch/x86/mm/dump_pagetables.c               | 39 +++++++++++++++-------------
 6 files changed, 70 insertions(+), 31 deletions(-)
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to