linux-stable/arch/s390/boot
Heiko Carstens c0f1d47812 s390/mm: simplify kernel mapping setup
The kernel mapping is setup in two stages: in the decompressor map all
pages with RWX permissions, and within the kernel change all mappings to
their final permissions, where most of the mappings are changed from RWX to
RWNX.

Change this and map all pages RWNX from the beginning, however without
enabling noexec via control register modification. This means that
effectively all pages are used with RWX permissions like before. When the
final permissions have been applied to the kernel mapping enable noexec via
control register modification.

This allows to remove quite a bit of non-obvious code.

Reviewed-by: Alexander Gordeev <agordeev@linux.ibm.com>
Signed-off-by: Heiko Carstens <hca@linux.ibm.com>
2023-08-30 11:03:27 +02:00
..
.gitignore s390/boot: get rid of startup archive 2022-05-06 20:45:14 +02:00
als.c s390/facilities: move stfl information from lowcore to global data 2021-06-07 17:06:58 +02:00
boot.h s390/kaslr: generalize and improve random base distribution 2023-04-13 17:36:27 +02:00
clz_ctz.c s390/boot: get rid of startup archive 2022-05-06 20:45:14 +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
decompressor.c Merge branch 'fixes' into features 2023-02-06 15:13:45 +01:00
decompressor.h s390/boot: cleanup decompressor header files 2023-01-13 14:15:04 +01:00
ebcdic.c s390/decompressor: avoid reusing uncompressed image objects 2018-06-25 10:14:39 +02:00
head.S s390: fix various typos 2023-07-03 11:19:42 +02:00
head_kdump.S s390: consistently use .balign instead of .align 2023-06-28 13:57:09 +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: remove "noexec" option 2023-08-30 11:03:27 +02:00
ipl_report.c s390/boot: rework decompressor reserved tracking 2023-03-20 11:02:50 +01: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/kaslr: generalize and improve random base distribution 2023-04-13 17:36:27 +02:00
machine_kexec_reloc.c s390/kernel: build a relocatable kernel 2019-04-29 10:47:10 +02:00
Makefile s390/boot: rename mem_detect to physmem_info 2023-03-20 11:02:50 +01: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/kaslr: provide kaslr_enabled() function 2023-04-13 17:36:25 +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: simplify kernel mapping setup 2023-08-30 11:03:27 +02:00
string.c kasan, x86, s390: update undef CONFIG_KASAN 2020-12-22 12:55:08 -08:00
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: simplify kernel mapping setup 2023-08-30 11:03:27 +02:00
vmlinux.lds.S s390/boot: rework decompressor reserved tracking 2023-03-20 11:02:50 +01:00