Large Virtual Adress support in ARM64 kernel
summary
Linux 5.4 adds ARM64 support for 52‑bit LVA/LPA (ARMv8.2) and flips the kernel virtual map so the direct linear map moves to the top of the 52‑bit range, requiring 64KB pages and three‑level page tables; older CPUs fall back at early boot via va_bits_ variables. Debug tools like kexec-tools, makedumpfile, crash-utility break until patched. User space stays 48‑bit by default and can opt in with an mmap hint larger than 48‑bit. Test using QEMU and ARMv8 fast model* simulators.
AI-written summary · about
chapters (9)
- 0:00Start
- 8:44Address Spaces
- 9:52Translation Table Walk
- 11:41Virtual Addressing Ranges
- 12:23Virtual Addressing Range
- 13:38Kernel Page Tables
- 15:41Kernel Design Approach
- 16:57Kernel Variables
- 22:15Pain Points
related talks
44mLarge Virtual Address support (52-bit) in ARM64 kernel
26mArm64 Linux Kernel Architecture update
47mLinux's Leap Beyond Fixed Pages
43mAddress Space Isolation for Enhanced Safety of the Linux Kernel
30mFlexible Paging in Linux: Per-process Page Size
37m32-bit Linux Support Now and in the Future
36mShared Virtual Addressing for High Performance Arm Infrastructure Platforms
46mKernel Hardening for 32-bit Arm Processors
