Loading Documentation/arm/memory.rst +11 −1 Original line number Diff line number Diff line Loading @@ -45,9 +45,14 @@ fffe8000 fffeffff DTCM mapping area for platforms with fffe0000 fffe7fff ITCM mapping area for platforms with ITCM mounted inside the CPU. ffc00000 ffefffff Fixmap mapping region. Addresses provided ffc80000 ffefffff Fixmap mapping region. Addresses provided by fix_to_virt() will be located here. ffc00000 ffc7ffff Guard region ff800000 ffbfffff Permanent, fixed read-only mapping of the firmware provided DT blob fee00000 feffffff Mapping of PCI I/O space. This is a static mapping within the vmalloc space. Loading @@ -72,6 +77,11 @@ MODULES_VADDR MODULES_END-1 Kernel module space Kernel modules inserted via insmod are placed here using dynamic mappings. TASK_SIZE MODULES_VADDR-1 KASAn shadow memory when KASan is in use. The range from MODULES_VADDR to the top of the memory is shadowed here with 1 bit per byte of memory. 00001000 TASK_SIZE-1 User space mappings Per-thread mappings are placed here via the mmap() system call. Loading Documentation/dev-tools/kasan.rst +2 −2 Original line number Diff line number Diff line Loading @@ -18,8 +18,8 @@ out-of-bounds accesses for global variables is only supported since Clang 11. Tag-based KASAN is only supported in Clang. Currently generic KASAN is supported for the x86_64, arm64, xtensa, s390 and riscv architectures, and tag-based KASAN is supported only for arm64. Currently generic KASAN is supported for the x86_64, arm, arm64, xtensa, s390 and riscv architectures, and tag-based KASAN is supported only for arm64. Usage ----- Loading Documentation/features/debug/KASAN/arch-support.txt +1 −1 Original line number Diff line number Diff line Loading @@ -8,7 +8,7 @@ ----------------------- | alpha: | TODO | | arc: | TODO | | arm: | TODO | | arm: | ok | | arm64: | ok | | c6x: | TODO | | csky: | TODO | Loading arch/arm/Kconfig +10 −0 Original line number Diff line number Diff line Loading @@ -67,6 +67,7 @@ config ARM select HAVE_ARCH_BITREVERSE if (CPU_32v7M || CPU_32v7) && !CPU_32v6 select HAVE_ARCH_JUMP_LABEL if !XIP_KERNEL && !CPU_ENDIAN_BE32 && MMU select HAVE_ARCH_KGDB if !CPU_ENDIAN_BE32 && MMU select HAVE_ARCH_KASAN if MMU && !XIP_KERNEL select HAVE_ARCH_MMAP_RND_BITS if MMU select HAVE_ARCH_SECCOMP select HAVE_ARCH_SECCOMP_FILTER if AEABI && !OABI_COMPAT Loading Loading @@ -1323,6 +1324,15 @@ config PAGE_OFFSET default 0xB0000000 if VMSPLIT_3G_OPT default 0xC0000000 config KASAN_SHADOW_OFFSET hex depends on KASAN default 0x1f000000 if PAGE_OFFSET=0x40000000 default 0x5f000000 if PAGE_OFFSET=0x80000000 default 0x9f000000 if PAGE_OFFSET=0xC0000000 default 0x8f000000 if PAGE_OFFSET=0xB0000000 default 0xffffffff config NR_CPUS int "Maximum number of CPUs (2-32)" range 2 32 Loading arch/arm/Makefile +1 −1 Original line number Diff line number Diff line Loading @@ -10,7 +10,7 @@ # # Copyright (C) 1995-2001 by Russell King LDFLAGS_vmlinux := --no-undefined -X --pic-veneer LDFLAGS_vmlinux := --no-undefined -X --pic-veneer -z norelro ifeq ($(CONFIG_CPU_ENDIAN_BE8),y) LDFLAGS_vmlinux += --be8 KBUILD_LDFLAGS_MODULE += --be8 Loading Loading
Documentation/arm/memory.rst +11 −1 Original line number Diff line number Diff line Loading @@ -45,9 +45,14 @@ fffe8000 fffeffff DTCM mapping area for platforms with fffe0000 fffe7fff ITCM mapping area for platforms with ITCM mounted inside the CPU. ffc00000 ffefffff Fixmap mapping region. Addresses provided ffc80000 ffefffff Fixmap mapping region. Addresses provided by fix_to_virt() will be located here. ffc00000 ffc7ffff Guard region ff800000 ffbfffff Permanent, fixed read-only mapping of the firmware provided DT blob fee00000 feffffff Mapping of PCI I/O space. This is a static mapping within the vmalloc space. Loading @@ -72,6 +77,11 @@ MODULES_VADDR MODULES_END-1 Kernel module space Kernel modules inserted via insmod are placed here using dynamic mappings. TASK_SIZE MODULES_VADDR-1 KASAn shadow memory when KASan is in use. The range from MODULES_VADDR to the top of the memory is shadowed here with 1 bit per byte of memory. 00001000 TASK_SIZE-1 User space mappings Per-thread mappings are placed here via the mmap() system call. Loading
Documentation/dev-tools/kasan.rst +2 −2 Original line number Diff line number Diff line Loading @@ -18,8 +18,8 @@ out-of-bounds accesses for global variables is only supported since Clang 11. Tag-based KASAN is only supported in Clang. Currently generic KASAN is supported for the x86_64, arm64, xtensa, s390 and riscv architectures, and tag-based KASAN is supported only for arm64. Currently generic KASAN is supported for the x86_64, arm, arm64, xtensa, s390 and riscv architectures, and tag-based KASAN is supported only for arm64. Usage ----- Loading
Documentation/features/debug/KASAN/arch-support.txt +1 −1 Original line number Diff line number Diff line Loading @@ -8,7 +8,7 @@ ----------------------- | alpha: | TODO | | arc: | TODO | | arm: | TODO | | arm: | ok | | arm64: | ok | | c6x: | TODO | | csky: | TODO | Loading
arch/arm/Kconfig +10 −0 Original line number Diff line number Diff line Loading @@ -67,6 +67,7 @@ config ARM select HAVE_ARCH_BITREVERSE if (CPU_32v7M || CPU_32v7) && !CPU_32v6 select HAVE_ARCH_JUMP_LABEL if !XIP_KERNEL && !CPU_ENDIAN_BE32 && MMU select HAVE_ARCH_KGDB if !CPU_ENDIAN_BE32 && MMU select HAVE_ARCH_KASAN if MMU && !XIP_KERNEL select HAVE_ARCH_MMAP_RND_BITS if MMU select HAVE_ARCH_SECCOMP select HAVE_ARCH_SECCOMP_FILTER if AEABI && !OABI_COMPAT Loading Loading @@ -1323,6 +1324,15 @@ config PAGE_OFFSET default 0xB0000000 if VMSPLIT_3G_OPT default 0xC0000000 config KASAN_SHADOW_OFFSET hex depends on KASAN default 0x1f000000 if PAGE_OFFSET=0x40000000 default 0x5f000000 if PAGE_OFFSET=0x80000000 default 0x9f000000 if PAGE_OFFSET=0xC0000000 default 0x8f000000 if PAGE_OFFSET=0xB0000000 default 0xffffffff config NR_CPUS int "Maximum number of CPUs (2-32)" range 2 32 Loading
arch/arm/Makefile +1 −1 Original line number Diff line number Diff line Loading @@ -10,7 +10,7 @@ # # Copyright (C) 1995-2001 by Russell King LDFLAGS_vmlinux := --no-undefined -X --pic-veneer LDFLAGS_vmlinux := --no-undefined -X --pic-veneer -z norelro ifeq ($(CONFIG_CPU_ENDIAN_BE8),y) LDFLAGS_vmlinux += --be8 KBUILD_LDFLAGS_MODULE += --be8 Loading