summaryrefslogtreecommitdiff
path: root/arch/s390
diff options
context:
space:
mode:
authorVasily Gorbik <gor@linux.ibm.com>2017-11-19 11:39:39 +0100
committerMartin Schwidefsky <schwidefsky@de.ibm.com>2018-10-09 11:21:28 +0200
commit5e785963298b7923e28817d20868882fbefc863c (patch)
tree3f59908d6657df6b24bd4f7e3fa3c98ebb385214 /arch/s390
parentf4f0d32bfb273537fcea9febc7081dac0252dcc0 (diff)
downloadlwn-5e785963298b7923e28817d20868882fbefc863c.tar.gz
lwn-5e785963298b7923e28817d20868882fbefc863c.zip
s390/kasan: enable stack and global variables access checks
By defining KASAN_SHADOW_OFFSET in Kconfig stack and global variables memory access check instrumentation is enabled. gcc version 4.9.2 or newer is also required. Reviewed-by: Martin Schwidefsky <schwidefsky@de.ibm.com> Signed-off-by: Vasily Gorbik <gor@linux.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Diffstat (limited to 'arch/s390')
-rw-r--r--arch/s390/Kconfig5
-rw-r--r--arch/s390/include/asm/kasan.h2
2 files changed, 6 insertions, 1 deletions
diff --git a/arch/s390/Kconfig b/arch/s390/Kconfig
index 95fff775ac7c..24586257c5cd 100644
--- a/arch/s390/Kconfig
+++ b/arch/s390/Kconfig
@@ -56,6 +56,11 @@ config PCI_QUIRKS
config ARCH_SUPPORTS_UPROBES
def_bool y
+config KASAN_SHADOW_OFFSET
+ hex
+ depends on KASAN
+ default 0x30000000000
+
config S390
def_bool y
select ARCH_BINFMT_ELF_STATE
diff --git a/arch/s390/include/asm/kasan.h b/arch/s390/include/asm/kasan.h
index 7de6eceb562e..892f4585c663 100644
--- a/arch/s390/include/asm/kasan.h
+++ b/arch/s390/include/asm/kasan.h
@@ -9,7 +9,7 @@
#define KASAN_SHADOW_SCALE_SHIFT 3
#define KASAN_SHADOW_SIZE \
(_AC(1, UL) << (_REGION2_SHIFT - KASAN_SHADOW_SCALE_SHIFT))
-#define KASAN_SHADOW_OFFSET _AC(0x30000000000, UL)
+#define KASAN_SHADOW_OFFSET _AC(CONFIG_KASAN_SHADOW_OFFSET, UL)
#define KASAN_SHADOW_START KASAN_SHADOW_OFFSET
#define KASAN_SHADOW_END (KASAN_SHADOW_START + KASAN_SHADOW_SIZE)