Since arm64 does not use a decompressor that supplies an execution
environment where it is feasible to some extent to provide a source of
randomness, the arm64 KASLR kernel depends on the bootloader to supply
some random bits in the /chosen/kaslr-seed DT property upon kernel entry.
On UEFI systems, we can use the EFI_RNG_PROTOCOL, if supplied, to obtain
some random bits. At the same time, use it to randomize the offset of the
kernel Image in physical memory.
Reviewed-by: Matt Fleming <matt@codeblueprint.co.uk>
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
(cherry picked from commit
|
||
|---|---|---|
| .. | ||
| libstub | ||
| cper.c | ||
| efi-pstore.c | ||
| efi.c | ||
| efivars.c | ||
| esrt.c | ||
| fake_mem.c | ||
| Kconfig | ||
| Makefile | ||
| reboot.c | ||
| runtime-map.c | ||
| runtime-wrappers.c | ||
| vars.c | ||