diff options
Diffstat (limited to 'include/asm-i386/pgtable-2level.h')
-rw-r--r-- | include/asm-i386/pgtable-2level.h | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/include/asm-i386/pgtable-2level.h b/include/asm-i386/pgtable-2level.h index 8d8d3b9ecdb0..38c3fcc0676d 100644 --- a/include/asm-i386/pgtable-2level.h +++ b/include/asm-i386/pgtable-2level.h | |||
@@ -1,8 +1,6 @@ | |||
1 | #ifndef _I386_PGTABLE_2LEVEL_H | 1 | #ifndef _I386_PGTABLE_2LEVEL_H |
2 | #define _I386_PGTABLE_2LEVEL_H | 2 | #define _I386_PGTABLE_2LEVEL_H |
3 | 3 | ||
4 | #include <asm-generic/pgtable-nopmd.h> | ||
5 | |||
6 | #define pte_ERROR(e) \ | 4 | #define pte_ERROR(e) \ |
7 | printk("%s:%d: bad pte %08lx.\n", __FILE__, __LINE__, (e).pte_low) | 5 | printk("%s:%d: bad pte %08lx.\n", __FILE__, __LINE__, (e).pte_low) |
8 | #define pgd_ERROR(e) \ | 6 | #define pgd_ERROR(e) \ |
@@ -13,17 +11,19 @@ | |||
13 | * within a page table are directly modified. Thus, the following | 11 | * within a page table are directly modified. Thus, the following |
14 | * hook is made available. | 12 | * hook is made available. |
15 | */ | 13 | */ |
14 | #ifndef CONFIG_PARAVIRT | ||
16 | #define set_pte(pteptr, pteval) (*(pteptr) = pteval) | 15 | #define set_pte(pteptr, pteval) (*(pteptr) = pteval) |
17 | #define set_pte_at(mm,addr,ptep,pteval) set_pte(ptep,pteval) | 16 | #define set_pte_at(mm,addr,ptep,pteval) set_pte(ptep,pteval) |
17 | #define set_pmd(pmdptr, pmdval) (*(pmdptr) = (pmdval)) | ||
18 | #endif | ||
19 | |||
18 | #define set_pte_atomic(pteptr, pteval) set_pte(pteptr,pteval) | 20 | #define set_pte_atomic(pteptr, pteval) set_pte(pteptr,pteval) |
19 | #define set_pte_present(mm,addr,ptep,pteval) set_pte_at(mm,addr,ptep,pteval) | 21 | #define set_pte_present(mm,addr,ptep,pteval) set_pte_at(mm,addr,ptep,pteval) |
20 | #define set_pmd(pmdptr, pmdval) (*(pmdptr) = (pmdval)) | ||
21 | 22 | ||
22 | #define pte_clear(mm,addr,xp) do { set_pte_at(mm, addr, xp, __pte(0)); } while (0) | 23 | #define pte_clear(mm,addr,xp) do { set_pte_at(mm, addr, xp, __pte(0)); } while (0) |
23 | #define pmd_clear(xp) do { set_pmd(xp, __pmd(0)); } while (0) | 24 | #define pmd_clear(xp) do { set_pmd(xp, __pmd(0)); } while (0) |
24 | 25 | ||
25 | #define __HAVE_ARCH_PTEP_GET_AND_CLEAR | 26 | #define raw_ptep_get_and_clear(xp) __pte(xchg(&(xp)->pte_low, 0)) |
26 | #define ptep_get_and_clear(mm,addr,xp) __pte(xchg(&(xp)->pte_low, 0)) | ||
27 | 27 | ||
28 | #define pte_page(x) pfn_to_page(pte_pfn(x)) | 28 | #define pte_page(x) pfn_to_page(pte_pfn(x)) |
29 | #define pte_none(x) (!(x).pte_low) | 29 | #define pte_none(x) (!(x).pte_low) |