]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/blame - include/asm-generic/4level-fixup.h
mm: make the __PAGETABLE_PxD_FOLDED defines non-empty
[mirror_ubuntu-bionic-kernel.git] / include / asm-generic / 4level-fixup.h
CommitLineData
b2441318 1/* SPDX-License-Identifier: GPL-2.0 */
1da177e4
LT
2#ifndef _4LEVEL_FIXUP_H
3#define _4LEVEL_FIXUP_H
4
5#define __ARCH_HAS_4LEVEL_HACK
224ab512 6#define __PAGETABLE_PUD_FOLDED 1
1da177e4 7
4155b8e0 8#define PUD_SHIFT PGDIR_SHIFT
1da177e4
LT
9#define PUD_SIZE PGDIR_SIZE
10#define PUD_MASK PGDIR_MASK
11#define PTRS_PER_PUD 1
12
13#define pud_t pgd_t
14
1bb3630e
HD
15#define pmd_alloc(mm, pud, address) \
16 ((unlikely(pgd_none(*(pud))) && __pmd_alloc(mm, pud, address))? \
17 NULL: pmd_offset(pud, address))
1da177e4 18
1da177e4
LT
19#define pud_offset(pgd, start) (pgd)
20#define pud_none(pud) 0
21#define pud_bad(pud) 0
22#define pud_present(pud) 1
23#define pud_ERROR(pud) do { } while (0)
24#define pud_clear(pud) pgd_clear(pud)
46a82b2d
DM
25#define pud_val(pud) pgd_val(pud)
26#define pud_populate(mm, pud, pmd) pgd_populate(mm, pud, pmd)
27#define pud_page(pud) pgd_page(pud)
28#define pud_page_vaddr(pud) pgd_page_vaddr(pud)
1da177e4
LT
29
30#undef pud_free_tlb
9e1b32ca 31#define pud_free_tlb(tlb, x, addr) do { } while (0)
5e541973 32#define pud_free(mm, x) do { } while (0)
9e1b32ca 33#define __pud_free_tlb(tlb, x, addr) do { } while (0)
1da177e4
LT
34
35#undef pud_addr_end
36#define pud_addr_end(addr, end) (end)
37
505a60e2
KS
38#include <asm-generic/5level-fixup.h>
39
1da177e4 40#endif