On Thu, 23 Feb 2023 21:41:01 +0100, Ard Biesheuvel wrote:
Our virtual KASLR displacement is a randomly chosen multiple of
2 MiB plus an offset that is equal to the physical placement modulo 2
MiB. This arrangement ensures that we can always use 2 MiB block
mappings (or contiguous PTE mappings for 16k or 64k pages) to map the
kernel.
This means that a KASLR offset of less than 2 MiB is simply the product
of this physical displacement, and no randomization has actually taken
place. Currently, we use 'kaslr_offset() > 0' to decide whether or not
randomization has occurred, and so we misidentify this case.
[...]
Applied to arm64 (for-next/core), thanks!
[1/1] arm64: kaslr: don't pretend KASLR is enabled if offset < MIN_KIMG_ALIGN
https://git.kernel.org/arm64/c/010338d729c1
--
Catalin
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel