1 /****************************************************************************
2 ****************************************************************************
3 ***
4 *** This header was automatically generated from a Linux kernel header
5 *** of the same name, to make information necessary for userspace to
6 *** call into the kernel available to libc. It contains only constants,
7 *** structures, and macros generated from the original header, and thus,
8 *** contains no copyrightable information.
9 ***
10 ****************************************************************************
11 ****************************************************************************/
12 #ifndef _4LEVEL_FIXUP_H
13 #define _4LEVEL_FIXUP_H
15 #define __ARCH_HAS_4LEVEL_HACK
16 #define __PAGETABLE_PUD_FOLDED
18 #define PUD_SIZE PGDIR_SIZE
19 #define PUD_MASK PGDIR_MASK
20 #define PTRS_PER_PUD 1
22 #define pud_t pgd_t
24 #define pmd_alloc(mm, pud, address) ((unlikely(pgd_none(*(pud))) && __pmd_alloc(mm, pud, address))? NULL: pmd_offset(pud, address))
26 #define pud_alloc(mm, pgd, address) (pgd)
27 #define pud_offset(pgd, start) (pgd)
28 #define pud_none(pud) 0
29 #define pud_bad(pud) 0
30 #define pud_present(pud) 1
31 #define pud_ERROR(pud) do { } while (0)
32 #define pud_clear(pud) pgd_clear(pud)
34 #undef pud_free_tlb
35 #define pud_free_tlb(tlb, x) do { } while (0)
36 #define pud_free(x) do { } while (0)
37 #define __pud_free_tlb(tlb, x) do { } while (0)
39 #undef pud_addr_end
40 #define pud_addr_end(addr, end) (end)
42 #endif