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
14
15#define __ARCH_HAS_4LEVEL_HACK
16#define __PAGETABLE_PUD_FOLDED
17
18#define PUD_SIZE PGDIR_SIZE
19#define PUD_MASK PGDIR_MASK
20#define PTRS_PER_PUD 1
21
22#define pud_t pgd_t
23
24#define pmd_alloc(mm, pud, address)   ((unlikely(pgd_none(*(pud))) && __pmd_alloc(mm, pud, address))?   NULL: pmd_offset(pud, address))
25
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)
33
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)
38
39#undef pud_addr_end
40#define pud_addr_end(addr, end) (end)
41
42#endif
43