Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/netbsd-1-5]: src/sys/arch/vax/vax Pull up revision 1.87 (requested by ra...



details:   https://anonhg.NetBSD.org/src/rev/3e208e9286aa
branches:  netbsd-1-5
changeset: 489287:3e208e9286aa
user:      ragge <ragge%NetBSD.org@localhost>
date:      Sun Aug 27 15:25:03 2000 +0000

description:
Pull up revision 1.87 (requested by ragge):

Wiring of a page were done at the wrong place, so pages in kernel space
never got the wired bit set. This caused panics if a swapped out process
was swapped in again and the kernel stack had not yet been unmapped.
While here, add a forgotten lock initializer.

diffstat:

 sys/arch/vax/vax/pmap.c |  7 ++++---
 1 files changed, 4 insertions(+), 3 deletions(-)

diffs (35 lines):

diff -r 489f1e23cc76 -r 3e208e9286aa sys/arch/vax/vax/pmap.c
--- a/sys/arch/vax/vax/pmap.c   Sun Aug 27 06:33:46 2000 +0000
+++ b/sys/arch/vax/vax/pmap.c   Sun Aug 27 15:25:03 2000 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: pmap.c,v 1.82.2.1 2000/08/13 08:46:32 ragge Exp $         */
+/*     $NetBSD: pmap.c,v 1.82.2.2 2000/08/27 15:25:03 ragge Exp $         */
 /*
  * Copyright (c) 1994, 1998, 1999 Ludd, University of Lule}, Sweden.
  * All rights reserved.
@@ -412,6 +412,7 @@
        MALLOC(pmap, struct pmap *, sizeof(*pmap), M_VMPMAP, M_WAITOK);
        bzero(pmap, sizeof(struct pmap));
        pmap_pinit(pmap);
+       simple_lock_init(&pmap->pm_lock);
        return(pmap);
 }
 
@@ -704,8 +705,6 @@
                        newpte = (p >> VAX_PGSHIFT) |
                            (prot & VM_PROT_WRITE ? PG_RW : PG_RO);
                }
-               if (flags & PMAP_WIRED)
-                       newpte |= PG_W;
 
                /*
                 * Check if a pte page must be mapped in.
@@ -744,6 +743,8 @@
                            VM_PROT_READ|VM_PROT_WRITE);
                }
        }
+       if (flags & PMAP_WIRED)
+               newpte |= PG_W;
 
        oldpte = patch[i] & ~(PG_V|PG_M);
 



Home | Main Index | Thread Index | Old Index