diff options
author | Jeremy Fitzhardinge <jeremy@goop.org> | 2009-02-05 14:30:59 -0500 |
---|---|---|
committer | Jeremy Fitzhardinge <jeremy@goop.org> | 2009-02-06 15:31:49 -0500 |
commit | 3ffb3564cd3cd59de8a0d74430ffe2d43ae11f19 (patch) | |
tree | f1e78915f4cd2a874f6111c8d810003ef6c3f860 /arch/x86 | |
parent | 3d081b1812bd4de2bbef58c6d598ddf45493010e (diff) |
x86: unify pmd_page_vaddr
Impact: cleanup
Unify and demacro pmd_page_vaddr.
Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Diffstat (limited to 'arch/x86')
-rw-r--r-- | arch/x86/include/asm/pgtable.h | 5 | ||||
-rw-r--r-- | arch/x86/include/asm/pgtable_32.h | 3 | ||||
-rw-r--r-- | arch/x86/include/asm/pgtable_64.h | 1 |
3 files changed, 5 insertions, 4 deletions
diff --git a/arch/x86/include/asm/pgtable.h b/arch/x86/include/asm/pgtable.h index decccb0a6410..3789c05bf30a 100644 --- a/arch/x86/include/asm/pgtable.h +++ b/arch/x86/include/asm/pgtable.h | |||
@@ -468,6 +468,11 @@ static inline int pmd_none(pmd_t pmd) | |||
468 | return !(unsigned long)native_pmd_val(pmd); | 468 | return !(unsigned long)native_pmd_val(pmd); |
469 | } | 469 | } |
470 | 470 | ||
471 | static inline unsigned long pmd_page_vaddr(pmd_t pmd) | ||
472 | { | ||
473 | return (unsigned long)__va(pmd_val(pmd) & PTE_PFN_MASK); | ||
474 | } | ||
475 | |||
471 | #if PAGETABLE_LEVELS > 2 | 476 | #if PAGETABLE_LEVELS > 2 |
472 | static inline int pud_present(pud_t pud) | 477 | static inline int pud_present(pud_t pud) |
473 | { | 478 | { |
diff --git a/arch/x86/include/asm/pgtable_32.h b/arch/x86/include/asm/pgtable_32.h index 26e73569223c..f7f7e297a0a0 100644 --- a/arch/x86/include/asm/pgtable_32.h +++ b/arch/x86/include/asm/pgtable_32.h | |||
@@ -126,9 +126,6 @@ static inline int pud_large(pud_t pud) { return 0; } | |||
126 | 126 | ||
127 | #define pmd_page(pmd) (pfn_to_page(pmd_val((pmd)) >> PAGE_SHIFT)) | 127 | #define pmd_page(pmd) (pfn_to_page(pmd_val((pmd)) >> PAGE_SHIFT)) |
128 | 128 | ||
129 | #define pmd_page_vaddr(pmd) \ | ||
130 | ((unsigned long)__va(pmd_val((pmd)) & PTE_PFN_MASK)) | ||
131 | |||
132 | #if defined(CONFIG_HIGHPTE) | 129 | #if defined(CONFIG_HIGHPTE) |
133 | #define pte_offset_map(dir, address) \ | 130 | #define pte_offset_map(dir, address) \ |
134 | ((pte_t *)kmap_atomic_pte(pmd_page(*(dir)), KM_PTE0) + \ | 131 | ((pte_t *)kmap_atomic_pte(pmd_page(*(dir)), KM_PTE0) + \ |
diff --git a/arch/x86/include/asm/pgtable_64.h b/arch/x86/include/asm/pgtable_64.h index 958dc1e7335e..7a510e8a8787 100644 --- a/arch/x86/include/asm/pgtable_64.h +++ b/arch/x86/include/asm/pgtable_64.h | |||
@@ -191,7 +191,6 @@ static inline int pud_large(pud_t pte) | |||
191 | } | 191 | } |
192 | 192 | ||
193 | /* PMD - Level 2 access */ | 193 | /* PMD - Level 2 access */ |
194 | #define pmd_page_vaddr(pmd) ((unsigned long) __va(pmd_val((pmd)) & PTE_PFN_MASK)) | ||
195 | #define pmd_page(pmd) (pfn_to_page(pmd_val((pmd)) >> PAGE_SHIFT)) | 194 | #define pmd_page(pmd) (pfn_to_page(pmd_val((pmd)) >> PAGE_SHIFT)) |
196 | 195 | ||
197 | #define pmd_index(address) (((address) >> PMD_SHIFT) & (PTRS_PER_PMD - 1)) | 196 | #define pmd_index(address) (((address) >> PMD_SHIFT) & (PTRS_PER_PMD - 1)) |