linux/arch/s390
Vasily Gorbik 759d4899d9 s390/kaslr: reserve memory for kasan usage
Sometimes the kernel fails to boot with:
"The Linux kernel failed to boot with the KernelAddressSanitizer:
out of memory during initialisation" even with big amounts of memory when
both kaslr and kasan are enabled.

The problem is that kasan initialization code requires 1/8 of physical
memory plus some for page tables. To keep as much code instrumented
as possible kasan avoids using memblock for memory allocations. Instead
kasan uses trivial memory allocator which simply chops off the memory
from the end of online physical memory. For that reason when kaslr is
enabled together with kasan avoid positioning kernel into upper memory
region which would be utilized during kasan initialization.

Reviewed-by: Gerald Schaefer <gerald.schaefer@de.ibm.com>
Signed-off-by: Vasily Gorbik <gor@linux.ibm.com>
2019-08-26 12:51:18 +02:00
..
appldata proc/sysctl: add shared variables for range check 2019-07-18 17:08:07 -07:00
boot s390/kaslr: reserve memory for kasan usage 2019-08-26 12:51:18 +02:00
configs Kbuild updates for v5.3 2019-07-12 16:03:16 -07:00
crypto s390/paes: Prepare paes functions for large key blobs 2019-08-21 12:58:54 +02:00
hypfs s390/hypfs: fix a typo in the name of a function 2019-07-23 10:45:32 +02:00
include s390/mem_detect: provide single get_mem_detect_end 2019-08-26 12:51:18 +02:00
kernel s390/vdso: reuse kstrtobool for option value parsing 2019-08-26 12:51:17 +02:00
kvm KVM: s390: Use kvm_vcpu_wake_up in kvm_s390_vcpu_wakeup 2019-07-20 09:00:45 +02:00
lib s390: clean .bss before running uncompressed kernel 2019-08-21 12:58:52 +02:00
mm s390/mem_detect: provide single get_mem_detect_end 2019-08-26 12:51:18 +02:00
net s390: bpf: eliminate zero extension code-gen 2019-05-24 18:58:38 -07:00
numa s390/numa: correct early_param handling 2019-08-26 12:51:17 +02:00
oprofile s390/unwind: introduce stack unwind API 2019-05-02 13:54:11 +02:00
pci s390/pci: PCI_IOV_RESOURCES loop refactoring in zpci_map_resources 2019-08-21 12:41:43 +02:00
purgatory s390/purgatory: update .gitignore 2019-06-04 15:03:42 +02:00
scripts s390: make chkbss work with clang 2019-04-11 13:36:52 +02:00
tools s390/disassembler: update opcode table 2019-06-04 15:03:58 +02:00
Kbuild s390/kexec_file: Add purgatory 2018-04-16 09:10:22 +02:00
Kconfig s390/stacktrace: use common arch_stack_walk infrastructure 2019-08-21 12:58:53 +02:00
Kconfig.debug Kconfig: consolidate the "Kernel hacking" menu 2018-08-02 08:06:48 +09:00
Makefile Kconfig updates for v5.3 2019-07-12 16:06:27 -07:00