diff options
Diffstat (limited to 'sys/arch/mvme88k')
-rw-r--r-- | sys/arch/mvme88k/mvme88k/machdep.c | 4 | ||||
-rw-r--r-- | sys/arch/mvme88k/mvme88k/mem.c | 4 | ||||
-rw-r--r-- | sys/arch/mvme88k/mvme88k/vm_machdep.c | 8 |
3 files changed, 13 insertions, 3 deletions
diff --git a/sys/arch/mvme88k/mvme88k/machdep.c b/sys/arch/mvme88k/mvme88k/machdep.c index ddaafb93240..f0fed8abeda 100644 --- a/sys/arch/mvme88k/mvme88k/machdep.c +++ b/sys/arch/mvme88k/mvme88k/machdep.c @@ -1,4 +1,4 @@ -/* $OpenBSD: machdep.c,v 1.69 2001/11/30 23:16:51 miod Exp $ */ +/* $OpenBSD: machdep.c,v 1.70 2001/12/08 02:24:06 art Exp $ */ /* * Copyright (c) 1998, 1999, 2000, 2001 Steve Murphree, Jr. * Copyright (c) 1996 Nivas Madhur @@ -479,6 +479,7 @@ cpu_startup() for (i = 0; i < btoc(MSGBUFSIZE); i++) pmap_kenter_pa((vm_offset_t)msgbufp, avail_end + i * NBPG, VM_PROT_READ|VM_PROT_WRITE); + pmap_update(pmap_kernel()); initmsgbuf((caddr_t)msgbufp, round_page(MSGBUFSIZE)); /* @@ -633,6 +634,7 @@ cpu_startup() curbufsize -= PAGE_SIZE; } } + pmap_update(pmap_kernel()); /* * Allocate a submap for exec arguments. This map effectively diff --git a/sys/arch/mvme88k/mvme88k/mem.c b/sys/arch/mvme88k/mvme88k/mem.c index 7ca64cfc69d..edbac9bb2e1 100644 --- a/sys/arch/mvme88k/mvme88k/mem.c +++ b/sys/arch/mvme88k/mvme88k/mem.c @@ -1,4 +1,4 @@ -/* $OpenBSD: mem.c,v 1.13 2001/11/06 19:53:15 miod Exp $ */ +/* $OpenBSD: mem.c,v 1.14 2001/12/08 02:24:06 art Exp $ */ /* * Copyright (c) 1988 University of Utah. @@ -138,11 +138,13 @@ mmrw(dev, uio, flags) pmap_enter(pmap_kernel(), (vm_offset_t)vmmap, trunc_page(v), uio->uio_rw == UIO_READ ? VM_PROT_READ : VM_PROT_WRITE, PMAP_WIRED); + pmap_update(pmap_kernel()); o = uio->uio_offset & PGOFSET; c = min(uio->uio_resid, (int)(NBPG - o)); error = uiomove((caddr_t)vmmap + o, c, uio); pmap_remove(pmap_kernel(), (vm_offset_t)vmmap, (vm_offset_t)vmmap + NBPG); + pmap_update(pmap_kernel()); continue; /* minor device 1 is kernel memory */ diff --git a/sys/arch/mvme88k/mvme88k/vm_machdep.c b/sys/arch/mvme88k/mvme88k/vm_machdep.c index 8cff090213c..682d657c21a 100644 --- a/sys/arch/mvme88k/mvme88k/vm_machdep.c +++ b/sys/arch/mvme88k/mvme88k/vm_machdep.c @@ -1,4 +1,4 @@ -/* $OpenBSD: vm_machdep.c,v 1.40 2001/11/28 16:13:29 art Exp $ */ +/* $OpenBSD: vm_machdep.c,v 1.41 2001/12/08 02:24:06 art Exp $ */ /* * Copyright (c) 1998 Steve Murphree, Jr. @@ -264,6 +264,7 @@ vmapbuf(bp, len) kva += PAGE_SIZE; len -= PAGE_SIZE; } + pmap_update(pmap_kernel()); } /* @@ -338,6 +339,7 @@ iomap_mapin(vm_offset_t pa, vm_size_t len, boolean_t canwait) tva += PAGE_SIZE; ppa += PAGE_SIZE; } + pmap_update(pmap_kernel()); #ifndef NEW_MAPPING return (iova + off); #else @@ -360,6 +362,7 @@ iomap_mapout(vm_offset_t kva, vm_size_t len) len = round_page(off + len); pmap_remove(vm_map_pmap(iomap_map), kva, kva + len); + pmap_update(vm_map_pmap(iomap_map)); s = splhigh(); error = extent_free(iomap_extent, kva, len, EX_NOWAIT); @@ -409,6 +412,7 @@ mapiospace(caddr_t pa, int len) pmap_kenter_pa(phys_map_vaddr1, (vm_offset_t)pa, VM_PROT_READ|VM_PROT_WRITE); + pmap_update(pmap_kernel()); return (phys_map_vaddr1 + off); } @@ -423,6 +427,7 @@ unmapiospace(vm_offset_t va) va = trunc_page(va); pmap_kremove(va, PAGE_SIZE); + pmap_update(pmap_kernel()); } int @@ -496,6 +501,7 @@ pagemove(from, to, size) to += PAGE_SIZE; size -= PAGE_SIZE; } + pmap_update(pmap_kernel()); } u_int |