mm: convert generic code to 5-level paging
Convert all non-architecture-specific code to 5-level paging. It's mostly mechanical adding handling one more page table level in places where we deal with pud_t. Signed-off-by: Kirill A. Shutemov <kirill.shutemov@linux.intel.com> Acked-by: Michal Hocko <mhocko@suse.com> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:

committed by
Linus Torvalds

parent
048456dcf2
commit
c2febafc67
@@ -219,15 +219,20 @@ static int atomic_pte_lookup(struct vm_area_struct *vma, unsigned long vaddr,
|
||||
int write, unsigned long *paddr, int *pageshift)
|
||||
{
|
||||
pgd_t *pgdp;
|
||||
pmd_t *pmdp;
|
||||
p4d_t *p4dp;
|
||||
pud_t *pudp;
|
||||
pmd_t *pmdp;
|
||||
pte_t pte;
|
||||
|
||||
pgdp = pgd_offset(vma->vm_mm, vaddr);
|
||||
if (unlikely(pgd_none(*pgdp)))
|
||||
goto err;
|
||||
|
||||
pudp = pud_offset(pgdp, vaddr);
|
||||
p4dp = p4d_offset(pgdp, vaddr);
|
||||
if (unlikely(p4d_none(*p4dp)))
|
||||
goto err;
|
||||
|
||||
pudp = pud_offset(p4dp, vaddr);
|
||||
if (unlikely(pud_none(*pudp)))
|
||||
goto err;
|
||||
|
||||
|
Reference in New Issue
Block a user