]> git.baikalelectronics.ru Git - kernel.git/commit
arm64: Ignore the 'write' ESR flag on cache maintenance faults
authorCatalin Marinas <catalin.marinas@arm.com>
Tue, 7 May 2013 15:57:06 +0000 (16:57 +0100)
committerCatalin Marinas <catalin.marinas@arm.com>
Wed, 8 May 2013 09:33:16 +0000 (10:33 +0100)
commit1973f2a682a10ad22dc85a40ee3b5323c6f278fa
tree42256e2678fc1c4a53686cb6f701560c3d86781b
parent5b78e29f7dcbdc96a3641486e1f516e5bc503be8
arm64: Ignore the 'write' ESR flag on cache maintenance faults

ESR.WnR bit is always set on data cache maintenance faults even though
the page is not required to have write permission. If a translation
fault (page not yet mapped) happens for read-only user address range,
Linux incorrectly assumes a permission fault. This patch adds the check
of the ESR.CM bit during the page fault handling to ignore the 'write'
flag.

Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
Reported-by: Tim Northover <Tim.Northover@arm.com>
Cc: stable@vger.kernel.org
arch/arm64/mm/fault.c