aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86/include/asm/pgtable_64.h
diff options
context:
space:
mode:
authorJeremy Fitzhardinge <jeremy@goop.org>2009-02-08 21:50:52 -0500
committerJeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>2009-02-11 17:54:09 -0500
commitfb3551491b20442c0de0d4debd54f40c654bbe98 (patch)
treea18365e8c07ff1cd174187f2c59756f8636fe913 /arch/x86/include/asm/pgtable_64.h
parentf402a65f93c7127b2bd93a4b2fe182cd859fb4c1 (diff)
x86: Split pgtable_64.h into pgtable_64_types.h and pgtable_64.h
Signed-off-by: Jeremy Fitzhardinge <jeremy@goop.org>
Diffstat (limited to 'arch/x86/include/asm/pgtable_64.h')
-rw-r--r--arch/x86/include/asm/pgtable_64.h48
1 files changed, 2 insertions, 46 deletions
diff --git a/arch/x86/include/asm/pgtable_64.h b/arch/x86/include/asm/pgtable_64.h
index 1c4e247c51fd..6b87bc6d5018 100644
--- a/arch/x86/include/asm/pgtable_64.h
+++ b/arch/x86/include/asm/pgtable_64.h
@@ -2,6 +2,8 @@
2#define _ASM_X86_PGTABLE_64_H 2#define _ASM_X86_PGTABLE_64_H
3 3
4#include <linux/const.h> 4#include <linux/const.h>
5#include <asm/pgtable_64_types.h>
6
5#ifndef __ASSEMBLY__ 7#ifndef __ASSEMBLY__
6 8
7/* 9/*
@@ -25,32 +27,6 @@ extern void paging_init(void);
25 27
26#endif /* !__ASSEMBLY__ */ 28#endif /* !__ASSEMBLY__ */
27 29
28#define SHARED_KERNEL_PMD 0
29
30/*
31 * PGDIR_SHIFT determines what a top-level page table entry can map
32 */
33#define PGDIR_SHIFT 39
34#define PTRS_PER_PGD 512
35
36/*
37 * 3rd level page
38 */
39#define PUD_SHIFT 30
40#define PTRS_PER_PUD 512
41
42/*
43 * PMD_SHIFT determines the size of the area a middle-level
44 * page table can map
45 */
46#define PMD_SHIFT 21
47#define PTRS_PER_PMD 512
48
49/*
50 * entries per page directory level
51 */
52#define PTRS_PER_PTE 512
53
54#ifndef __ASSEMBLY__ 30#ifndef __ASSEMBLY__
55 31
56#define pte_ERROR(e) \ 32#define pte_ERROR(e) \
@@ -130,26 +106,6 @@ static inline void native_pgd_clear(pgd_t *pgd)
130 native_set_pgd(pgd, native_make_pgd(0)); 106 native_set_pgd(pgd, native_make_pgd(0));
131} 107}
132 108
133#endif /* !__ASSEMBLY__ */
134
135#define PMD_SIZE (_AC(1, UL) << PMD_SHIFT)
136#define PMD_MASK (~(PMD_SIZE - 1))
137#define PUD_SIZE (_AC(1, UL) << PUD_SHIFT)
138#define PUD_MASK (~(PUD_SIZE - 1))
139#define PGDIR_SIZE (_AC(1, UL) << PGDIR_SHIFT)
140#define PGDIR_MASK (~(PGDIR_SIZE - 1))
141
142
143#define MAXMEM _AC(__AC(1, UL) << MAX_PHYSMEM_BITS, UL)
144#define VMALLOC_START _AC(0xffffc20000000000, UL)
145#define VMALLOC_END _AC(0xffffe1ffffffffff, UL)
146#define VMEMMAP_START _AC(0xffffe20000000000, UL)
147#define MODULES_VADDR _AC(0xffffffffa0000000, UL)
148#define MODULES_END _AC(0xffffffffff000000, UL)
149#define MODULES_LEN (MODULES_END - MODULES_VADDR)
150
151#ifndef __ASSEMBLY__
152
153/* 109/*
154 * Conversion functions: convert a page and protection to a page entry, 110 * Conversion functions: convert a page and protection to a page entry,
155 * and a page entry and page directory to the page they refer to. 111 * and a page entry and page directory to the page they refer to.