android_kernel_samsung_sm8650/arch/s390
Gerald Schaefer 7c8d42fdf1 s390/hugetlb: fix prepare_hugepage_range() check for 2 GB hugepages
The alignment check in prepare_hugepage_range() is wrong for 2 GB
hugepages, it only checks for 1 MB hugepage alignment.

This can result in kernel crash in __unmap_hugepage_range() at the
BUG_ON(start & ~huge_page_mask(h)) alignment check, for mappings
created with MAP_FIXED at unaligned address.

Fix this by correctly handling multiple hugepage sizes, similar to the
generic version of prepare_hugepage_range().

Fixes: d08de8e2d8 ("s390/mm: add support for 2GB hugepages")
Cc: <stable@vger.kernel.org> # 4.8+
Acked-by: Alexander Gordeev <agordeev@linux.ibm.com>
Signed-off-by: Gerald Schaefer <gerald.schaefer@linux.ibm.com>
Signed-off-by: Vasily Gorbik <gor@linux.ibm.com>
2022-08-30 21:57:07 +02:00
..
appldata s390/appldata: use struct_size() helper 2020-06-29 16:32:34 +02:00
boot s390 updates for 5.20 merge window 2022-08-06 17:05:21 -07:00
configs s390: update defconfigs 2022-08-30 21:57:07 +02:00
crypto s390 updates for 5.20 merge window 2022-08-06 17:05:21 -07:00
hypfs s390/hypfs: avoid error message under KVM 2022-08-15 17:19:51 +02:00
include s390/hugetlb: fix prepare_hugepage_range() check for 2 GB hugepages 2022-08-30 21:57:07 +02:00
kernel s390: fix nospec table alignments 2022-08-30 21:57:07 +02:00
kvm KVM: s390: resetting the Topology-Change-Report 2022-07-20 10:57:37 +02:00
lib s390/nospec: build expoline.o for modules_prepare target 2022-07-13 15:21:55 +02:00
mm s390/mm: remove useless hugepage address alignment 2022-08-30 21:57:07 +02:00
net s390/bpf: Fix typo in comment 2022-05-23 11:25:53 -07:00
pci pci-v5.20-changes 2022-08-04 19:30:35 -07:00
purgatory s390/purgatory: remove duplicated build rule of kexec-purgatory.o 2022-06-30 14:18:16 +02:00
tools KVM: s390: Add facility 197 to the allow list 2022-07-13 15:25:25 +02:00
Kbuild kbuild: use more subdir- for visiting subdirectories while cleaning 2021-10-24 13:49:46 +09:00
Kconfig Random number generator updates for Linux 6.0-rc1. 2022-08-02 17:31:35 -07:00
Kconfig.debug s390/Kconfig.debug: fix indentation 2022-06-01 12:03:15 +02:00
Makefile s390/nospec: remove unneeded header includes 2022-07-13 15:21:55 +02:00