summary refs log tree commit diff
path: root/arch/s390/kernel/setup.c
diff options
context:
space:
mode:
authorVasily Gorbik <gor@linux.ibm.com>2017-11-17 18:44:28 +0100
committerMartin Schwidefsky <schwidefsky@de.ibm.com>2018-10-09 11:21:24 +0200
commitd58106c3ec9abcf2f9882171d6230eccfd6dc52e (patch)
treedf49d5748482b08c2c96e17de5b58df20d21e3ec /arch/s390/kernel/setup.c
parent793213a82de4ccc96f394ea5deaaf57c0bb01f0b (diff)
downloadlinux-d58106c3ec9abcf2f9882171d6230eccfd6dc52e.tar.gz
s390/kasan: use noexec and large pages
To lower memory footprint and speed up kasan initialisation detect
EDAT availability and use large pages if possible. As we know how
much memory is needed for initialisation, another simplistic large
page allocator is introduced to avoid memory fragmentation.

Since facilities list is retrieved anyhow, detect noexec support and
adjust pages attributes. Handle noexec kernel option to avoid inconsistent
kasan shadow memory pages flags.

Signed-off-by: Vasily Gorbik <gor@linux.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Diffstat (limited to 'arch/s390/kernel/setup.c')
-rw-r--r--arch/s390/kernel/setup.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/s390/kernel/setup.c b/arch/s390/kernel/setup.c
index 93cf9bce98a1..d7548806d887 100644
--- a/arch/s390/kernel/setup.c
+++ b/arch/s390/kernel/setup.c
@@ -90,6 +90,7 @@ char elf_platform[ELF_PLATFORM_SIZE];
 
 unsigned long int_hwcap = 0;
 
+int __bootdata(noexec_disabled);
 int __bootdata(memory_end_set);
 unsigned long __bootdata(memory_end);
 unsigned long __bootdata(max_physmem_end);