[PATCH 0/2] arm64: permit KASLR in linear region even VArange == PArange

Ard Biesheuvel ardb at kernel.org
Wed Dec 15 06:52:26 PST 2021


Kefeng reports in [0] that using PArange to size the randomized linear
region offset leads to cases where randomization is no longer possible
even if the actual placement of DRAM in memory would otherwise have
permitted it.

Instead of using CONFIG_MEMORY_HOTPLUG to choose at build time between
to different behaviors in this regard, let's try addressing this by
reducing the minimum relative aligment between VA and PA in the linear
region, and taking advantage of the space at the base of physical memory
below the first memblock to permit some randomization of the placement
of physical DRAM in the virtual address map.

Cc: Kefeng Wang <wangkefeng.wang at huawei.com>

[0] https://lore.kernel.org/linux-arm-kernel/20211104062747.55206-1-wangkefeng.wang@huawei.com/

Ard Biesheuvel (2):
  arm64: simplify rules for defining ARM64_MEMSTART_ALIGN
  arm64: kaslr: take free space at start of DRAM into account

 arch/arm64/include/asm/kernel-pgtable.h | 27 +++-----------------
 arch/arm64/mm/init.c                    |  3 ++-
 2 files changed, 6 insertions(+), 24 deletions(-)

-- 
2.30.2




More information about the linux-arm-kernel mailing list