Commit 4c19869f authored by Ye Bin's avatar Ye Bin Committed by Zheng Zengkai
Browse files

arm32: kaslr: Bugfix of initrd size calculation when enabled kaslr

hulk inclusion
category: bugfix
bugzilla: 185870 https://gitee.com/openeuler/kernel/issues/I4M8IW?from=project-issue


CVE: NA

-----------------------------------------------------------

The maximum linear address is U32_MAX, when enabled kaslr,
A small value should be taken between end_addr of initrd and
U32_MAX when calculating the size of initrd.

Fixes: c1a0cdb5 ("ARM: decompressor: add KASLR support")
Signed-off-by: default avatarYe Bin <yebin10@huawei.com>
Signed-off-by: default avataryangerkun <yangerkun@huawei.com>
Signed-off-by: default avatarCui GaoSheng <cuigaosheng1@huawei.com>
Reviewed-by: default avatarXiu Jianfeng <xiujianfeng@huawei.com>
Signed-off-by: default avatarZheng Zengkai <zhengzengkai@huawei.com>
parent 4b0cf3be
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -410,7 +410,7 @@ u32 kaslr_early_init(u32 *kaslr_offset, u32 image_base, u32 image_size,
		}
		if (start != 0 && end != 0 && start < U32_MAX) {
			regions.initrd_start = start;
			regions.initrd_size = max_t(u64, end, U32_MAX) - start;
			regions.initrd_size = min_t(u64, end, U32_MAX) - start;
		}
	}