x86/asm: Add pud/pmd mask interfaces to handle large PAT bit
authorToshi Kani <toshi.kani@hpe.com>
Thu, 17 Sep 2015 18:24:16 +0000 (12:24 -0600)
committerThomas Gleixner <tglx@linutronix.de>
Tue, 22 Sep 2015 19:27:32 +0000 (21:27 +0200)
commit4be4c1fb9a754b100466ebaec50f825be0b2050b
tree55a55732ca896fa63dac23cf18a47b7ef5d608b5
parent832102671855f73962e7a04fdafd48b9385ea5c6
x86/asm: Add pud/pmd mask interfaces to handle large PAT bit

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 used for masking pfn and flags for all levels.

Add pud/pmd mask interfaces to handle pfn and flags properly by using
P?D_PAGE_MASK when PUD/PMD mappings are used, i.e. PSE bit is set.

Suggested-by: Juergen Gross <jgross@suse.com>
Signed-off-by: Toshi Kani <toshi.kani@hpe.com>
Cc: Andrew Morton <akpm@linux-foundation.org>
Cc: Juergen Gross <jgross@suse.com>
Cc: H. Peter Anvin <hpa@zytor.com>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: Borislav Petkov <bp@alien8.de>
Cc: Konrad Wilk <konrad.wilk@oracle.com>
Cc: Robert Elliot <elliott@hpe.com>
Cc: linux-mm@kvack.org
Link: http://lkml.kernel.org/r/1442514264-12475-4-git-send-email-toshi.kani@hpe.com
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
arch/x86/include/asm/pgtable_types.h