diff options
author | Kanoj Sarcar <kanoj@engr.sgi.com> | 2000-03-16 03:21:22 +0000 |
---|---|---|
committer | Kanoj Sarcar <kanoj@engr.sgi.com> | 2000-03-16 03:21:22 +0000 |
commit | b64bbed64fa5444942bed0a937173e52b589ed87 (patch) | |
tree | 75396317674c91b7240793ce94163d64a72a3f29 /arch/mips64/mm/init.c | |
parent | 1f2be86b3d8d9972559d28c9ea86f3f83e2f9429 (diff) |
Misc mm type bug fixes.
Diffstat (limited to 'arch/mips64/mm/init.c')
-rw-r--r-- | arch/mips64/mm/init.c | 7 |
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; |