aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm64/include/asm/ptdump.h
diff options
context:
space:
mode:
authorArd Biesheuvel <ard.biesheuvel@linaro.org>2016-10-21 12:22:58 +0100
committerCatalin Marinas <catalin.marinas@arm.com>2016-11-07 18:15:04 +0000
commit0bfc445dec9dd8130d22c9f4476eed7598524129 (patch)
tree0e1e5f498d9b9498aaec6de3b6d82abac2e03c98 /arch/arm64/include/asm/ptdump.h
parentarm64: mm: replace 'block_mappings_allowed' with 'page_mappings_only' (diff)
downloadlinux-dev-0bfc445dec9dd8130d22c9f4476eed7598524129.tar.xz
linux-dev-0bfc445dec9dd8130d22c9f4476eed7598524129.zip
arm64: mm: set the contiguous bit for kernel mappings where appropriate
Now that we no longer allow live kernel PMDs to be split, it is safe to start using the contiguous bit for kernel mappings. So set the contiguous bit in the kernel page mappings for regions whose size and alignment are suitable for this. This enables the following contiguous range sizes for the virtual mapping of the kernel image, and for the linear mapping: granule size | cont PTE | cont PMD | -------------+------------+------------+ 4 KB | 64 KB | 32 MB | 16 KB | 2 MB | 1 GB* | 64 KB | 2 MB | 16 GB* | * Only when built for 3 or more levels of translation. This is due to the fact that a 2 level configuration only consists of PGDs and PTEs, and the added complexity of dealing with folded PMDs is not justified considering that 16 GB contiguous ranges are likely to be ignored by the hardware (and 16k/2 levels is a niche configuration) Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
Diffstat (limited to 'arch/arm64/include/asm/ptdump.h')
0 files changed, 0 insertions, 0 deletions