linux/arch/s390/boot
Alexander Gordeev 693d41f7c9 s390/mm: Restore mapping of kernel image using large pages
Since physical and virtual kernel address spaces are uncoupled
the kernel image is not mapped using large segment pages anymore,
which is a regression.

Put the kernel image at the same large segment page offset in
physical memory as in virtual memory. Such approach preserves
the existing number of bits of entropy used for randomization
of the kernel location in virtual memory when KASLR is on.
As result, the kernel is mapped using large segment pages.

Fixes: c98d2ecae0 ("s390/mm: Uncouple physical vs virtual address spaces")
Reported-by: Heiko Carstens <hca@linux.ibm.com>
Reviewed-by: Heiko Carstens <hca@linux.ibm.com>
Signed-off-by: Alexander Gordeev <agordeev@linux.ibm.com>
Signed-off-by: Vasily Gorbik <gor@linux.ibm.com>
2024-06-11 16:20:40 +02:00
..
.gitignore s390: compile relocatable kernel without -fPIE 2024-02-20 14:37:33 +01:00
als.c
boot.h s390: Compile kernel with -fPIC and link with -no-pie 2024-04-29 17:33:30 +02:00
clz_ctz.c s390/boot: get rid of startup archive 2022-05-06 20:45:14 +02:00
cmdline.c
ctype.c
decompressor.c s390/boot: Rework deployment of the kernel image 2024-04-17 13:38:02 +02:00
decompressor.h s390/boot: Rework deployment of the kernel image 2024-04-17 13:38:02 +02:00
ebcdic.c
head_kdump.S s390: consistently use .balign instead of .align 2023-06-28 13:57:09 +02:00
head.S s390: fix various typos 2023-07-03 11:19:42 +02:00
install.sh s390/boot: improve install.sh script 2023-04-13 17:36:28 +02:00
ipl_data.c s390/boot: convert parmarea to C 2022-05-06 20:45:15 +02:00
ipl_parm.c s390/boot: always align vmalloc area on segment boundary 2023-11-22 14:07:28 +01:00
ipl_report.c s390/boot: rework decompressor reserved tracking 2023-03-20 11:02:50 +01:00
ipl_vmparm.c
kaslr.c s390/mm: Uncouple physical vs virtual address spaces 2024-04-17 13:38:01 +02:00
machine_kexec_reloc.c
Makefile s390: Compile kernel with -fPIC and link with -no-pie 2024-04-29 17:33:30 +02:00
mem.S
pgm_check_info.c s390/boot: Uncouple virtual and physical kernel offsets 2024-04-17 13:38:00 +02:00
physmem_info.c s390/kaslr: generalize and improve random base distribution 2023-04-13 17:36:27 +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/mm: Restore mapping of kernel image using large pages 2024-06-11 16:20:40 +02:00
string.c
uv.c s390/uv: Update query for secret-UVCs 2023-06-16 11:08:09 +02:00
uv.h s390/boot: cleanup adjust_to_uv_max() function 2022-07-28 18:05:23 +02:00
version.c kbuild: build init/built-in.a just once 2022-09-29 04:40:15 +09:00
vmem.c s390/mm: Restore mapping of kernel image using large pages 2024-06-11 16:20:40 +02:00
vmlinux.lds.S s390/mm: Restore mapping of kernel image using large pages 2024-06-11 16:20:40 +02:00