[PATCH v7 0/7] arm64: Reorganize kernel VA space

Ard Biesheuvel ardb at google.com
Wed Dec 13 00:40:25 PST 2023


From: Ard Biesheuvel <ardb at kernel.org>

These seven patches were taken from [0] and tweaked to address the
feedback by Mark Rutland. They reconfigure the upper region of the
kernel VA space so that the vmemmap region can be resized dynamically
on 52-bit builds running on 48-bit-only hardware. This is needed for
LPA2 support.

They can be applied onto the arm62 lpa2-prep branch.

[0] https://lore.kernel.org/all/20231129111555.3594833-43-ardb@google.com

v7:
- add static assert to avoid the fixmap overlapping with the PCI I/O
  region
- avoid deriving VMEMMAP_END from VMEMMAP_START+VMEMMAP_SIZE in ptdump.c
- add ack from Mark

Cc: Catalin Marinas <catalin.marinas at arm.com>
Cc: Will Deacon <will at kernel.org>
Cc: Marc Zyngier <maz at kernel.org>
Cc: Mark Rutland <mark.rutland at arm.com>

Ard Biesheuvel (7):
  arm64: mm: Move PCI I/O emulation region above the vmemmap region
  arm64: mm: Move fixmap region above vmemmap region
  arm64: ptdump: Allow all region boundaries to be defined at boot time
  arm64: ptdump: Discover start of vmemmap region at runtime
  arm64: vmemmap: Avoid base2 order of struct page size to dimension
    region
  arm64: mm: Reclaim unused vmemmap region for vmalloc use
  arm64: kaslr: Adjust randomization range dynamically

 arch/arm64/include/asm/memory.h    | 14 ++---
 arch/arm64/include/asm/pgtable.h   | 10 ++--
 arch/arm64/kernel/image-vars.h     |  2 +
 arch/arm64/kernel/pi/kaslr_early.c | 11 ++--
 arch/arm64/mm/fixmap.c             |  3 ++
 arch/arm64/mm/ptdump.c             | 56 +++++++++-----------
 6 files changed, 49 insertions(+), 47 deletions(-)

-- 
2.43.0.472.g3155946c3a-goog




More information about the linux-arm-kernel mailing list