1b2441318SGreg Kroah-Hartman /* SPDX-License-Identifier: GPL-2.0 */ 2b924a281SJeremy Fitzhardinge #ifndef _ASM_X86_PGTABLE_2LEVEL_DEFS_H 3b924a281SJeremy Fitzhardinge #define _ASM_X86_PGTABLE_2LEVEL_DEFS_H 4b924a281SJeremy Fitzhardinge 554321d94SJeremy Fitzhardinge #ifndef __ASSEMBLY__ 654321d94SJeremy Fitzhardinge #include <linux/types.h> 754321d94SJeremy Fitzhardinge 854321d94SJeremy Fitzhardinge typedef unsigned long pteval_t; 954321d94SJeremy Fitzhardinge typedef unsigned long pmdval_t; 1054321d94SJeremy Fitzhardinge typedef unsigned long pudval_t; 11fe1e8c3eSKirill A. Shutemov typedef unsigned long p4dval_t; 1254321d94SJeremy Fitzhardinge typedef unsigned long pgdval_t; 1354321d94SJeremy Fitzhardinge typedef unsigned long pgprotval_t; 1454321d94SJeremy Fitzhardinge 1554321d94SJeremy Fitzhardinge typedef union { 1654321d94SJeremy Fitzhardinge pteval_t pte; 1754321d94SJeremy Fitzhardinge pteval_t pte_low; 1854321d94SJeremy Fitzhardinge } pte_t; 1954321d94SJeremy Fitzhardinge #endif /* !__ASSEMBLY__ */ 2054321d94SJeremy Fitzhardinge 21b924a281SJeremy Fitzhardinge #define SHARED_KERNEL_PMD 0 22b924a281SJeremy Fitzhardinge 2386cf69f1SJoerg Roedel #define ARCH_PAGE_TABLE_SYNC_MASK PGTBL_PMD_MODIFIED 2486cf69f1SJoerg Roedel 25b924a281SJeremy Fitzhardinge /* 26b924a281SJeremy Fitzhardinge * traditional i386 two-level paging structure: 27b924a281SJeremy Fitzhardinge */ 28b924a281SJeremy Fitzhardinge 29b924a281SJeremy Fitzhardinge #define PGDIR_SHIFT 22 30b924a281SJeremy Fitzhardinge #define PTRS_PER_PGD 1024 31b924a281SJeremy Fitzhardinge 329b3651cbSJeremy Fitzhardinge 33b924a281SJeremy Fitzhardinge /* 34b924a281SJeremy Fitzhardinge * the i386 is two-level, so we don't really have any 35b924a281SJeremy Fitzhardinge * PMD directory physically. 36b924a281SJeremy Fitzhardinge */ 37b924a281SJeremy Fitzhardinge 38b924a281SJeremy Fitzhardinge #define PTRS_PER_PTE 1024 39b924a281SJeremy Fitzhardinge 4076e258adSJoerg Roedel /* This covers all VMSPLIT_* and VMSPLIT_*_OPT variants */ 4176e258adSJoerg Roedel #define PGD_KERNEL_START (CONFIG_PAGE_OFFSET >> PGDIR_SHIFT) 4276e258adSJoerg Roedel 43b924a281SJeremy Fitzhardinge #endif /* _ASM_X86_PGTABLE_2LEVEL_DEFS_H */ 44