diff options
author | Jeremy Fitzhardinge <jeremy@goop.org> | 2008-01-30 07:32:57 -0500 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2008-01-30 07:32:57 -0500 |
commit | c8e5393ab38564d2f45b560a2f95bc8f9ff6f823 (patch) | |
tree | 2976d59bb412786712bddec0eedf82e1db58401d /include/asm-x86/pgtable-2level.h | |
parent | b7fff536d0ad45c4810f9b99845c707ceadc3afc (diff) |
x86: page.h: make pte_t a union to always include
Make sure pte_t, whatever its definition, has a pte element with type
pteval_t. This allows common code to access it without needing to be
specifically parameterised on what pagetable mode we're compiling for.
For 32-bit, this means that pte_t becomes a union with "pte" and "{
pte_low, pte_high }" (PAE) or just "pte_low" (non-PAE).
Signed-off-by: Jeremy Fitzhardinge <jeremy@xensource.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Diffstat (limited to 'include/asm-x86/pgtable-2level.h')
-rw-r--r-- | include/asm-x86/pgtable-2level.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/include/asm-x86/pgtable-2level.h b/include/asm-x86/pgtable-2level.h index d3171c0cb157..f949bb083089 100644 --- a/include/asm-x86/pgtable-2level.h +++ b/include/asm-x86/pgtable-2level.h | |||
@@ -72,13 +72,13 @@ static inline int pte_exec_kernel(pte_t pte) | |||
72 | ((((pte).pte_low >> 1) & 0x1f ) + (((pte).pte_low >> 8) << 5 )) | 72 | ((((pte).pte_low >> 1) & 0x1f ) + (((pte).pte_low >> 8) << 5 )) |
73 | 73 | ||
74 | #define pgoff_to_pte(off) \ | 74 | #define pgoff_to_pte(off) \ |
75 | ((pte_t) { (((off) & 0x1f) << 1) + (((off) >> 5) << 8) + _PAGE_FILE }) | 75 | ((pte_t) { .pte_low = (((off) & 0x1f) << 1) + (((off) >> 5) << 8) + _PAGE_FILE }) |
76 | 76 | ||
77 | /* Encode and de-code a swap entry */ | 77 | /* Encode and de-code a swap entry */ |
78 | #define __swp_type(x) (((x).val >> 1) & 0x1f) | 78 | #define __swp_type(x) (((x).val >> 1) & 0x1f) |
79 | #define __swp_offset(x) ((x).val >> 8) | 79 | #define __swp_offset(x) ((x).val >> 8) |
80 | #define __swp_entry(type, offset) ((swp_entry_t) { ((type) << 1) | ((offset) << 8) }) | 80 | #define __swp_entry(type, offset) ((swp_entry_t) { ((type) << 1) | ((offset) << 8) }) |
81 | #define __pte_to_swp_entry(pte) ((swp_entry_t) { (pte).pte_low }) | 81 | #define __pte_to_swp_entry(pte) ((swp_entry_t) { (pte).pte_low }) |
82 | #define __swp_entry_to_pte(x) ((pte_t) { (x).val }) | 82 | #define __swp_entry_to_pte(x) ((pte_t) { .pte = (x).val }) |
83 | 83 | ||
84 | #endif /* _I386_PGTABLE_2LEVEL_H */ | 84 | #endif /* _I386_PGTABLE_2LEVEL_H */ |