linux/arch
Nick Hu 8ad8b72721
riscv: Add KASAN support
This patch ports the feature Kernel Address SANitizer (KASAN).

Note: The start address of shadow memory is at the beginning of kernel
space, which is 2^64 - (2^39 / 2) in SV39. The size of the kernel space is
2^38 bytes so the size of shadow memory should be 2^38 / 8. Thus, the
shadow memory would not overlap with the fixmap area.

There are currently two limitations in this port,

1. RV64 only: KASAN need large address space for extra shadow memory
region.

2. KASAN can't debug the modules since the modules are allocated in VMALLOC
area. We mapped the shadow memory, which corresponding to VMALLOC area, to
the kasan_early_shadow_page because we don't have enough physical space for
all the shadow memory corresponding to VMALLOC area.

Signed-off-by: Nick Hu <nickhu@andestech.com>
Reported-by: Greentime Hu <green.hu@gmail.com>
Signed-off-by: Palmer Dabbelt <palmerdabbelt@google.com>
2020-01-22 13:09:58 -08:00
..
alpha alpha: use pgtable-nopud instead of 4level-fixup 2019-12-04 19:44:14 -08:00
arc ARC fixes for v5.5-rc6 2020-01-06 10:16:48 -08:00
arm ARM: SoC fixes 2020-01-16 19:42:08 -08:00
arm64 ARM: SoC fixes 2020-01-16 19:42:08 -08:00
c6x c6x: use pgtable-nopud instead of 4level-fixup 2019-12-04 19:44:15 -08:00
csky dma-mapping updates for 5.5-rc1 2019-11-28 11:16:43 -08:00
h8300 h8300: Move EXCEPTION_TABLE to RO_DATA segment 2019-11-04 18:12:55 +01:00
hexagon hexagon: define ioremap_uc 2020-01-04 13:55:09 -08:00
ia64 mm/memory_hotplug: shrink zones when offlining memory 2020-01-04 13:55:08 -08:00
m68k Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/gerg/m68knommu 2019-12-05 12:20:42 -08:00
microblaze microblaze: use pgtable-nopmd instead of 4level-fixup 2019-12-04 19:44:15 -08:00
mips A collection of MIPS fixes: 2020-01-04 14:16:57 -08:00
nds32 nds32: fix build failure caused by page table folding updates 2019-12-30 11:19:05 +01:00
nios2 nios2: Fix ioremap 2019-12-12 16:34:33 +08:00
openrisc OpenRISC updates for 5.5 2019-12-02 17:18:43 -08:00
parisc Merge branch 'parisc-5.5-3' of git://git.kernel.org/pub/scm/linux/kernel/git/deller/parisc-linux 2020-01-14 10:22:10 -08:00
powerpc mm/memory_hotplug: shrink zones when offlining memory 2020-01-04 13:55:08 -08:00
riscv riscv: Add KASAN support 2020-01-22 13:09:58 -08:00
s390 s390/setup: Fix secure ipl message 2020-01-09 16:59:18 +01:00
sh mm/memory_hotplug: shrink zones when offlining memory 2020-01-04 13:55:08 -08:00
sparc treewide: Use sizeof_field() macro 2019-12-09 10:36:44 -08:00
um um: Implement copy_thread_tls 2020-01-07 13:31:29 +01:00
unicore32 generic ioremap support 2019-11-28 10:57:12 -08:00
x86 Merge branch 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2020-01-18 13:02:12 -08:00
xtensa xtensa: Implement copy_thread_tls 2020-01-07 13:31:25 +01:00
.gitignore
Kconfig arch/Kconfig: fix indentation 2019-12-04 19:44:12 -08:00