summaryrefslogtreecommitdiffstats
path: root/arch/mips64/mm/init.c
diff options
context:
space:
mode:
authorKanoj Sarcar <kanoj@engr.sgi.com>2000-03-16 03:21:22 +0000
committerKanoj Sarcar <kanoj@engr.sgi.com>2000-03-16 03:21:22 +0000
commitb64bbed64fa5444942bed0a937173e52b589ed87 (patch)
tree75396317674c91b7240793ce94163d64a72a3f29 /arch/mips64/mm/init.c
parent1f2be86b3d8d9972559d28c9ea86f3f83e2f9429 (diff)
Misc mm type bug fixes.
Diffstat (limited to 'arch/mips64/mm/init.c')
-rw-r--r--arch/mips64/mm/init.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/arch/mips64/mm/init.c b/arch/mips64/mm/init.c
index 2ff7865ad..ae17a6d91 100644
--- a/arch/mips64/mm/init.c
+++ b/arch/mips64/mm/init.c
@@ -1,4 +1,4 @@
-/* $Id: init.c,v 1.12 2000/02/10 02:03:59 kanoj Exp $
+/* $Id: init.c,v 1.13 2000/02/23 00:41:00 ralf Exp $
*
* This file is subject to the terms and conditions of the GNU General Public
* License. See the file "COPYING" in the main directory of this archive
@@ -87,6 +87,8 @@ pgd_t *get_pgd_slow(void)
if (ret) {
init = pgd_offset(&init_mm, 0);
pgd_init((unsigned long)ret);
+ memcpy(ret + USER_PTRS_PER_PGD, init + USER_PTRS_PER_PGD,
+ (PTRS_PER_PGD - USER_PTRS_PER_PGD) * sizeof(pgd_t));
}
return ret;
}
@@ -278,7 +280,7 @@ pmd_t * __bad_pmd_table(void)
unsigned long page;
page = (unsigned long) invalid_pmd_table;
- pte_init(page);
+ pmd_init(page);
return (pmd_t *) page;
}
@@ -345,7 +347,6 @@ void __init paging_init(void)
/* Initialize the entire pgd. */
pgd_init((unsigned long)swapper_pg_dir);
- pgd_init((unsigned long)swapper_pg_dir + PAGE_SIZE / 2);
pmd_init((unsigned long)invalid_pmd_table);
max_dma = virt_to_phys((char *)MAX_DMA_ADDRESS) >> PAGE_SHIFT;