linux/arch/s390/boot
Vasily Gorbik 9a39abb7c9 s390/boot: simplify and fix kernel memory layout setup
Initial KASAN shadow memory range was picked to preserve original kernel
modules area position. With protected execution support, which might
impose addressing limitation on vmalloc area and hence affect modules
area position, current fixed KASAN shadow memory range is only making
kernel memory layout setup more complex. So move it to the very end of
available virtual space and simplify calculations.

At the same time return to previous kernel address space split. In
particular commit 0c4f2623b9 ("s390: setup kernel memory layout
early") introduced precise identity map size calculation and keeping
vmemmap left most starting from a fresh region table entry. This didn't
take into account additional mapping region requirement for potential
DCSS mapping above available physical memory. So go back to virtual
space split between 1:1 mapping & vmemmap array once vmalloc area size
is subtracted.

Cc: stable@vger.kernel.org
Fixes: 0c4f2623b9 ("s390: setup kernel memory layout early")
Reported-by: Gerald Schaefer <gerald.schaefer@linux.ibm.com>
Reviewed-by: Heiko Carstens <hca@linux.ibm.com>
Reviewed-by: Alexander Gordeev <agordeev@linux.ibm.com>
Signed-off-by: Vasily Gorbik <gor@linux.ibm.com>
Signed-off-by: Heiko Carstens <hca@linux.ibm.com>
2021-11-16 12:29:19 +01:00
..
compressed s390/boot: allocate amode31 section in decompressor 2021-10-04 09:49:37 +02:00
.gitignore .gitignore: add SPDX License Identifier 2020-03-25 11:50:48 +01:00
als.c s390/facilities: move stfl information from lowcore to global data 2021-06-07 17:06:58 +02:00
boot.h s390/boot: move dma sections from decompressor to decompressed kernel 2021-07-27 09:39:17 +02:00
cmdline.c s390: move ipl block and cmd line handling to early boot phase 2018-10-09 11:21:14 +02:00
ctype.c s390: move ipl block and cmd line handling to early boot phase 2018-10-09 11:21:14 +02:00
ebcdic.c s390/decompressor: avoid reusing uncompressed image objects 2018-06-25 10:14:39 +02:00
head_kdump.S s390/decompressor: correct some asm symbols annotations 2020-11-20 19:19:11 +01:00
head.S s390: support command lines longer than 896 bytes 2021-10-26 15:21:31 +02:00
install.sh s390/arch: install kernels with their proper version ID 2020-02-19 17:27:24 +01:00
ipl_parm.c s390: support command lines longer than 896 bytes 2021-10-26 15:21:31 +02:00
ipl_report.c s390/boot: introduce boot data 'initrd_data' 2021-07-27 09:39:15 +02:00
ipl_vmparm.c s390: move ipl block and cmd line handling to early boot phase 2018-10-09 11:21:14 +02:00
kaslr.c s390/boot: introduce boot data 'initrd_data' 2021-07-27 09:39:15 +02:00
machine_kexec_reloc.c s390/kernel: build a relocatable kernel 2019-04-29 10:47:10 +02:00
Makefile s390: move the install rule to arch/s390/Makefile 2021-07-30 17:09:36 +02:00
mem_detect.c s390/boot: introduce boot data 'initrd_data' 2021-07-27 09:39:15 +02:00
mem.S s390/decompressor: reuse lib/mem.S for mem functions 2018-06-25 10:14:39 +02:00
pgm_check_info.c s390: rename last_break to pgm_last_break 2021-10-26 15:21:28 +02:00
sclp_early_core.c s390/boot: move sclp early buffer from fixed address in asm to C 2021-07-27 09:39:15 +02:00
startup.c s390/boot: simplify and fix kernel memory layout setup 2021-11-16 12:29:19 +01:00
string.c kasan, x86, s390: update undef CONFIG_KASAN 2020-12-22 12:55:08 -08:00
uv.c s390/dump: introduce boot data 'oldmem_data' 2021-07-27 09:39:16 +02:00
uv.h s390/boot: disable Secure Execution in dump mode 2021-07-27 09:39:14 +02:00
version.c s390: enable detection of kernel version from bzImage 2019-07-23 10:43:50 +02:00