UPSTREAM: arm64: kasan: ensure that the KASAN zero page is mapped read-only
authorArd Biesheuvel <ard.biesheuvel@linaro.org>
Mon, 11 Jan 2016 13:50:21 +0000 (14:50 +0100)
committerJeff Vander Stoep <jeffv@google.com>
Sun, 18 Sep 2016 21:44:28 +0000 (14:44 -0700)
commitfd89b55b8391791a0cd49258a8922b4982d19f47
tree1714570a07b3a24179152bdad10bfc28265434b6
parenta84dda4e8627f7b6a91a5c2cd17e4cd059ac9cbf
UPSTREAM: arm64: kasan: ensure that the KASAN zero page is mapped read-only

When switching from the early KASAN shadow region, which maps the
entire shadow space read-write, to the permanent KASAN shadow region,
which uses a zero page to shadow regions that are not subject to
instrumentation, the lowest level table kasan_zero_pte[] may be
reused unmodified, which means that the mappings of the zero page
that it contains will still be read-write.

So update it explicitly to map the zero page read only when we
activate the permanent mapping.

Acked-by: Andrey Ryabinin <aryabinin@virtuozzo.com>
Acked-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Signed-off-by: Will Deacon <will.deacon@arm.com>
Bug: 30369029
Patchset: rework-pagetable

(cherry picked from commit 7b1af9795773d745c2a8c7d4ca5f2936e8b6adfb)
Signed-off-by: Jeff Vander Stoep <jeffv@google.com>
Change-Id: I4745dc91236c2612ad3e13be1cc176ffd923f7da
arch/arm64/mm/kasan_init.c