diff options
Diffstat (limited to 'arch/arm64/include/asm/pgalloc.h')
| -rw-r--r-- | arch/arm64/include/asm/pgalloc.h | 26 |
1 files changed, 4 insertions, 22 deletions
diff --git a/arch/arm64/include/asm/pgalloc.h b/arch/arm64/include/asm/pgalloc.h index ff98585d085a..c15053902942 100644 --- a/arch/arm64/include/asm/pgalloc.h +++ b/arch/arm64/include/asm/pgalloc.h @@ -42,20 +42,11 @@ static inline void pmd_free(struct mm_struct *mm, pmd_t *pmd) free_page((unsigned long)pmd); } -static inline void __pud_populate(pud_t *pud, phys_addr_t pmd, pudval_t prot) -{ - set_pud(pud, __pud(pmd | prot)); -} - static inline void pud_populate(struct mm_struct *mm, pud_t *pud, pmd_t *pmd) { - __pud_populate(pud, __pa(pmd), PMD_TYPE_TABLE); -} -#else -static inline void __pud_populate(pud_t *pud, phys_addr_t pmd, pudval_t prot) -{ - BUILD_BUG(); + set_pud(pud, __pud(__pa(pmd) | PMD_TYPE_TABLE)); } + #endif /* CONFIG_PGTABLE_LEVELS > 2 */ #if CONFIG_PGTABLE_LEVELS > 3 @@ -71,20 +62,11 @@ static inline void pud_free(struct mm_struct *mm, pud_t *pud) free_page((unsigned long)pud); } -static inline void __pgd_populate(pgd_t *pgdp, phys_addr_t pud, pgdval_t prot) -{ - set_pgd(pgdp, __pgd(pud | prot)); -} - static inline void pgd_populate(struct mm_struct *mm, pgd_t *pgd, pud_t *pud) { - __pgd_populate(pgd, __pa(pud), PUD_TYPE_TABLE); -} -#else -static inline void __pgd_populate(pgd_t *pgdp, phys_addr_t pud, pgdval_t prot) -{ - BUILD_BUG(); + set_pgd(pgd, __pgd(__pa(pud) | PUD_TYPE_TABLE)); } + #endif /* CONFIG_PGTABLE_LEVELS > 3 */ extern pgd_t *pgd_alloc(struct mm_struct *mm); |
