4level-fixup.h 896 B

1234567891011121314151617181920212223242526272829303132333435363738
  1. #ifndef _4LEVEL_FIXUP_H
  2. #define _4LEVEL_FIXUP_H
  3. #define __ARCH_HAS_4LEVEL_HACK
  4. #define __PAGETABLE_PUD_FOLDED
  5. #define PUD_SIZE PGDIR_SIZE
  6. #define PUD_MASK PGDIR_MASK
  7. #define PTRS_PER_PUD 1
  8. #define pud_t pgd_t
  9. #define pmd_alloc(mm, pud, address) \
  10. ({ pmd_t *ret; \
  11. if (pgd_none(*pud)) \
  12. ret = __pmd_alloc(mm, pud, address); \
  13. else \
  14. ret = pmd_offset(pud, address); \
  15. ret; \
  16. })
  17. #define pud_alloc(mm, pgd, address) (pgd)
  18. #define pud_offset(pgd, start) (pgd)
  19. #define pud_none(pud) 0
  20. #define pud_bad(pud) 0
  21. #define pud_present(pud) 1
  22. #define pud_ERROR(pud) do { } while (0)
  23. #define pud_clear(pud) pgd_clear(pud)
  24. #undef pud_free_tlb
  25. #define pud_free_tlb(tlb, x) do { } while (0)
  26. #define pud_free(x) do { } while (0)
  27. #define __pud_free_tlb(tlb, x) do { } while (0)
  28. #undef pud_addr_end
  29. #define pud_addr_end(addr, end) (end)
  30. #endif