diff options
author | Ingo Molnar <mingo@elte.hu> | 2009-02-24 15:52:45 -0500 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2009-02-24 15:52:45 -0500 |
commit | 0edcf8d6926f4038443dbc24e319530177ca0353 (patch) | |
tree | 6010af62f73d01ab673d5106f310eaf4f4228e32 /arch/x86/mm/init_32.c | |
parent | 87b203079ed949de52f0d92aeae20e5e0116c12f (diff) | |
parent | 40150d37be7f7949b2ec07d511244da856647d84 (diff) |
Merge branch 'tj-percpu' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/misc into core/percpu
Conflicts:
arch/x86/include/asm/pgtable.h
Diffstat (limited to 'arch/x86/mm/init_32.c')
-rw-r--r-- | arch/x86/mm/init_32.c | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/arch/x86/mm/init_32.c b/arch/x86/mm/init_32.c index 06708ee94aa4..ef0bb941cdf5 100644 --- a/arch/x86/mm/init_32.c +++ b/arch/x86/mm/init_32.c | |||
@@ -137,6 +137,23 @@ static pte_t * __init one_page_table_init(pmd_t *pmd) | |||
137 | return pte_offset_kernel(pmd, 0); | 137 | return pte_offset_kernel(pmd, 0); |
138 | } | 138 | } |
139 | 139 | ||
140 | pmd_t * __init populate_extra_pmd(unsigned long vaddr) | ||
141 | { | ||
142 | int pgd_idx = pgd_index(vaddr); | ||
143 | int pmd_idx = pmd_index(vaddr); | ||
144 | |||
145 | return one_md_table_init(swapper_pg_dir + pgd_idx) + pmd_idx; | ||
146 | } | ||
147 | |||
148 | pte_t * __init populate_extra_pte(unsigned long vaddr) | ||
149 | { | ||
150 | int pte_idx = pte_index(vaddr); | ||
151 | pmd_t *pmd; | ||
152 | |||
153 | pmd = populate_extra_pmd(vaddr); | ||
154 | return one_page_table_init(pmd) + pte_idx; | ||
155 | } | ||
156 | |||
140 | static pte_t *__init page_table_kmap_check(pte_t *pte, pmd_t *pmd, | 157 | static pte_t *__init page_table_kmap_check(pte_t *pte, pmd_t *pmd, |
141 | unsigned long vaddr, pte_t *lastpte) | 158 | unsigned long vaddr, pte_t *lastpte) |
142 | { | 159 | { |