diff options
author | Will Deacon <will@kernel.org> | 2021-10-29 13:25:04 +0200 |
---|---|---|
committer | Will Deacon <will@kernel.org> | 2021-10-29 13:25:04 +0200 |
commit | dc6bab18fb3c9dfde892cef2b1fe73565ff1f91a (patch) | |
tree | 2d5305b31c94d0077ce9979dccd886b136fe4c6f /arch/arm64/include | |
parent | Merge branch 'for-next/misc' into for-next/core (diff) | |
parent | arm64: mm: update max_pfn after memory hotplug (diff) | |
download | linux-dc6bab18fb3c9dfde892cef2b1fe73565ff1f91a.tar.xz linux-dc6bab18fb3c9dfde892cef2b1fe73565ff1f91a.zip |
Merge branch 'for-next/mm' into for-next/core
* for-next/mm:
arm64: mm: update max_pfn after memory hotplug
arm64/mm: Add pud_sect_supported()
arm64: mm: Drop pointless call to set_max_mapnr()
Diffstat (limited to 'arch/arm64/include')
-rw-r--r-- | arch/arm64/include/asm/pgtable.h | 5 | ||||
-rw-r--r-- | arch/arm64/include/asm/vmalloc.h | 4 |
2 files changed, 7 insertions, 2 deletions
diff --git a/arch/arm64/include/asm/pgtable.h b/arch/arm64/include/asm/pgtable.h index dfa76afa0ccf..84fbb52b4224 100644 --- a/arch/arm64/include/asm/pgtable.h +++ b/arch/arm64/include/asm/pgtable.h @@ -1022,6 +1022,11 @@ static inline pgprot_t arch_filter_pgprot(pgprot_t prot) return PAGE_READONLY_EXEC; } +static inline bool pud_sect_supported(void) +{ + return PAGE_SIZE == SZ_4K; +} + #endif /* !__ASSEMBLY__ */ diff --git a/arch/arm64/include/asm/vmalloc.h b/arch/arm64/include/asm/vmalloc.h index 7a22aeea9bb5..b9185503feae 100644 --- a/arch/arm64/include/asm/vmalloc.h +++ b/arch/arm64/include/asm/vmalloc.h @@ -2,6 +2,7 @@ #define _ASM_ARM64_VMALLOC_H #include <asm/page.h> +#include <asm/pgtable.h> #ifdef CONFIG_HAVE_ARCH_HUGE_VMAP @@ -9,10 +10,9 @@ static inline bool arch_vmap_pud_supported(pgprot_t prot) { /* - * Only 4k granule supports level 1 block mappings. * SW table walks can't handle removal of intermediate entries. */ - return IS_ENABLED(CONFIG_ARM64_4K_PAGES) && + return pud_sect_supported() && !IS_ENABLED(CONFIG_PTDUMP_DEBUGFS); } |