Lines Matching +full:fixed +full:- +full:layout
2 Memory Layout on AArch64 Linux
7 This document describes the virtual memory layout used by the AArch64
12 with the 4KB page configuration, allowing 39-bit (512GB) or 48-bit
14 64KB pages, only 2 levels of translation tables, allowing 42-bit (4TB)
15 virtual address, are used but the memory layout is the same.
23 contains only user (non-global) mappings. The swapper_pg_dir address is
27 hypervisor maps kernel pages in EL2 at a fixed (and potentially
36 52-bit VA support in the kernel
37 -------------------------------
38 If the ARMv8.2-LVA optional feature is present, and we are running
39 with a 64KB page size; then it is possible to use 52-bits of address
41 binary that supports 52-bit must also be able to fall back to 48-bit
45 higher addresses such that they are invariant to 48/52-bit VAs. Due
48 kernel VA space for both 48/52-bit. (Switching from 48-bit to 52-bit,
53 is kept constant at 0xFFF0000000000000 (corresponding to 52-bit),
58 As a single binary will need to support both 48-bit and 52-bit VA
59 spaces, the VMEMMAP must be sized large enough for 52-bit VAs and
60 also must be sized large enough to accommodate a fixed PAGE_OFFSET.
77 52-bit userspace VAs
78 --------------------
80 VA space maximum size of 48-bits, the kernel will, by default,
81 return virtual addresses to userspace from a 48-bit range.
83 Software can "opt-in" to receiving VAs from a 52-bit space by
84 specifying an mmap hint parameter that is larger than 48-bit.
88 .. code-block:: c
93 from a 52-bit space by enabling the following kernel config options:
95 .. code-block:: sh