linux/arch/arm64/mm
Bjorn Andersson d4d18e3ec6 arm64: mm: Ensure tail of unaligned initrd is reserved
In the event that the start address of the initrd is not aligned, but
has an aligned size, the base + size will not cover the entire initrd
image and there is a chance that the kernel will corrupt the tail of the
image.

By aligning the end of the initrd to a page boundary and then
subtracting the adjusted start address the memblock reservation will
cover all pages that contains the initrd.

Fixes: c756c592e4 ("arm64: Utilize phys_initrd_start/phys_initrd_size")
Cc: stable@vger.kernel.org
Acked-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
2019-04-23 10:56:24 +01:00
..
cache.S arm64: Fix minor issues with the dcache_by_line_op macro 2018-12-10 15:03:51 +00:00
context.c arm64: mm: Drop the unused cpu parameter 2018-10-09 17:17:23 +01:00
copypage.c arm64: Defer dcache flush in __cpu_copy_user_page 2015-12-17 11:07:13 +00:00
dma-mapping.c arm64/xen: fix xen-swiotlb cache flushing 2019-01-23 22:14:56 +01:00
dump.c arm64 updates for 5.1: 2019-03-10 10:17:23 -07:00
extable.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
fault.c arm64 updates for 5.1: 2019-03-10 10:17:23 -07:00
flush.c arm64: Do not issue IPIs for user executable ptes 2019-02-01 14:06:50 +00:00
hugetlbpage.c arm64/mm: enable HugeTLB migration for contiguous bit HugeTLB pages 2019-03-05 21:07:15 -08:00
init.c arm64: mm: Ensure tail of unaligned initrd is reserved 2019-04-23 10:56:24 +01:00
ioremap.c arm64: use is_vmalloc_addr 2017-02-09 13:47:56 +00:00
kasan_init.c treewide: add checks for the return value of memblock_alloc*() 2019-03-12 10:04:02 -07:00
Makefile License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
mmap.c exec: pass stack rlimit into mm layout functions 2018-04-11 10:28:37 -07:00
mmu.c memblock: memblock_phys_alloc(): don't panic 2019-03-12 10:04:01 -07:00
numa.c memblock: memblock_phys_alloc_try_nid(): don't panic 2019-03-12 10:04:01 -07:00
pageattr.c arm64: mm: apply r/o permissions of VM areas to its linear alias as well 2018-11-20 11:38:26 +00:00
pgd.c arm64: handle 52-bit addresses in TTBR 2017-12-22 17:35:21 +00:00
physaddr.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
proc.S arm64: Add workaround for Fujitsu A64FX erratum 010001 2019-02-28 16:24:25 +00:00
ptdump_debugfs.c arm64: dump: no need to check return value of debugfs_create functions 2019-01-31 17:38:19 +00:00