linux-stable/arch/s390/boot
Alexander Gordeev ef0d6a9b44 s390/boot: cleanup number of page table levels setup
[ Upstream commit 8ddccc8a7d ]

The separate vmalloc area size check against _REGION2_SIZE
is needed in case user provided insanely large value using
vmalloc= kernel command line parameter. That could lead to
overflow and selecting 3 page table levels instead of 4.

Use size_add() for the overflow check and get rid of the
extra vmalloc area check.

With the current values of CONFIG_MAX_PHYSMEM_BITS and
PAGES_PER_SECTION the sum of maximal possible size of
identity mapping and vmemmap area (derived from these
macros) plus modules area size MODULES_LEN can not
overflow. Thus, that sum is used as first addend while
vmalloc area size is second addend for size_add().

Suggested-by: Heiko Carstens <hca@linux.ibm.com>
Acked-by: Heiko Carstens <hca@linux.ibm.com>
Signed-off-by: Alexander Gordeev <agordeev@linux.ibm.com>
Signed-off-by: Heiko Carstens <hca@linux.ibm.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-09-23 11:14:18 +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/kaslr: provide kaslr_enabled() function 2023-04-13 17:36:25 +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/boot: cleanup number of page table levels setup 2023-09-23 11:14:18 +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/kasan: avoid short by one page shadow memory 2023-06-20 19:52:13 +02:00
vmlinux.lds.S s390/boot: rework decompressor reserved tracking 2023-03-20 11:02:50 +01:00