[PATCH 0/6 v14] KASan for Arm
Linus Walleij
linus.walleij at linaro.org
Thu Oct 1 11:22:26 EDT 2020
This is the 14th iteration of KASan for ARM/Aarch32.
I have added one patch in the beginning of the series to
fix the issue when the DTB (often attached DTB) ends up
in lowmem. It also amends ARM to copy the device tree
instead of just unflattening it and using it from where
it is.
This fixes my particular issue on the Qualcomm APQ8060
and I hope it may also solve Florian's issue and what
Ard has been seeing. If you inspect patch 1/6 you can
see what has been going on for me. My hypothesis about
what was going on was mostly right.
You are encouraged to test this patch set to find memory out
of bounds bugs with ARM32 platforms and drivers.
There is a git branch you can pull in:
https://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-integrator.git/log/?h=kasan
Abbott Liu (1):
ARM: Define the virtual space of KASan's shadow region
Andrey Ryabinin (3):
ARM: Disable KASan instrumentation for some code
ARM: Replace string mem* functions for KASan
ARM: Enable KASan for ARM
Linus Walleij (2):
ARM: Handle a device tree in lowmem
ARM: Initialize the mapping of KASan shadow memory
Documentation/arm/memory.rst | 5 +
Documentation/dev-tools/kasan.rst | 4 +-
.../features/debug/KASAN/arch-support.txt | 2 +-
arch/arm/Kconfig | 10 +
arch/arm/boot/compressed/Makefile | 1 +
arch/arm/boot/compressed/string.c | 19 ++
arch/arm/include/asm/kasan.h | 32 ++
arch/arm/include/asm/kasan_def.h | 81 +++++
arch/arm/include/asm/memory.h | 5 +
arch/arm/include/asm/pgalloc.h | 8 +-
arch/arm/include/asm/prom.h | 5 +
arch/arm/include/asm/string.h | 21 ++
arch/arm/include/asm/thread_info.h | 8 +
arch/arm/include/asm/uaccess-asm.h | 2 +-
arch/arm/kernel/devtree.c | 14 +-
arch/arm/kernel/entry-armv.S | 3 +-
arch/arm/kernel/entry-common.S | 9 +-
arch/arm/kernel/head-common.S | 7 +-
arch/arm/kernel/setup.c | 10 +-
arch/arm/kernel/unwind.c | 6 +-
arch/arm/lib/memcpy.S | 3 +
arch/arm/lib/memmove.S | 5 +-
arch/arm/lib/memset.S | 3 +
arch/arm/mm/Makefile | 5 +
arch/arm/mm/kasan_init.c | 286 ++++++++++++++++++
arch/arm/mm/mmu.c | 55 +++-
arch/arm/mm/pgd.c | 16 +-
arch/arm/vdso/Makefile | 2 +
28 files changed, 608 insertions(+), 19 deletions(-)
create mode 100644 arch/arm/include/asm/kasan.h
create mode 100644 arch/arm/include/asm/kasan_def.h
create mode 100644 arch/arm/mm/kasan_init.c
--
2.26.2
More information about the linux-arm-kernel
mailing list