arm64: Move PTE_PROT_NONE higher up
authorCatalin Marinas <catalin.marinas@arm.com>
Wed, 27 Nov 2013 16:59:27 +0000 (16:59 +0000)
committerMark Brown <broonie@linaro.org>
Thu, 15 May 2014 18:59:50 +0000 (19:59 +0100)
commit6d9c4ff8c2fc63a1d79453c1f68323cca4386e7d
treede65dc8f7406002554a0915355833830a033de6e
parentd9ccf6b1647eae73f79d45c12474ae73e29dc784
arm64: Move PTE_PROT_NONE higher up

PTE_PROT_NONE means that a pte is present but does not have any
read/write attributes. However, setting the memory type like
pgprot_writecombine() is allowed and such bits overlap with
PTE_PROT_NONE. This causes mmap/munmap issues in drivers that change the
vma->vm_pg_prot on PROT_NONE mappings.

This patch reverts the PTE_FILE/PTE_PROT_NONE shift in commit
59911ca4325d (ARM64: mm: Move PTE_PROT_NONE bit) and moves PTE_PROT_NONE
together with the other software bits.

Signed-off-by: Steve Capper <steve.capper@linaro.org>
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
Tested-by: Steve Capper <steve.capper@linaro.org>
Cc: <stable@vger.kernel.org> # 3.11+
arch/arm64/include/asm/pgtable.h