summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTodd C. Miller <millert@cvs.openbsd.org>2001-05-28 21:08:37 +0000
committerTodd C. Miller <millert@cvs.openbsd.org>2001-05-28 21:08:37 +0000
commit900ff3db497d920bda2371ccbfa85ac08f6f1a37 (patch)
tree5470f349b1005cfeeff51ffbdbe9d0f498ea82f8
parent003b06d76be118f7d0071a6b79dd42e11590fce2 (diff)
#ifdef PMAP_NEW we should call pmap_kremove/pmap_kenter_pa instead of
pmap_remove/pmap_enter. This is needed for when hp300 has true pmap_kremove/pmap_kenter_pa instead of just wrapper functions.
-rw-r--r--sys/arch/hp300/hp300/vm_machdep.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/sys/arch/hp300/hp300/vm_machdep.c b/sys/arch/hp300/hp300/vm_machdep.c
index bb411a7fbbd..a629bb7e72d 100644
--- a/sys/arch/hp300/hp300/vm_machdep.c
+++ b/sys/arch/hp300/hp300/vm_machdep.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: vm_machdep.c,v 1.22 2001/05/15 02:00:09 millert Exp $ */
+/* $OpenBSD: vm_machdep.c,v 1.23 2001/05/28 21:08:36 millert Exp $ */
/* $NetBSD: vm_machdep.c,v 1.47 1999/03/26 23:41:29 mycroft Exp $ */
/*
@@ -243,11 +243,16 @@ pagemove(from, to, size)
if (pmap_extract(pmap_kernel(), (vaddr_t)to) != 0)
panic("pagemove 3");
#endif
+#ifdef PMAP_NEW
+ pmap_kremove((vaddr_t)from, PAGE_SIZE);
+ pmap_kenter_pa((vaddr_t)to, pa, VM_PROT_READ|VM_PROT_WRITE);
+#else
pmap_remove(pmap_kernel(),
(vaddr_t)from, (vaddr_t)from + PAGE_SIZE);
pmap_enter(pmap_kernel(),
(vaddr_t)to, pa, VM_PROT_READ|VM_PROT_WRITE, 1,
VM_PROT_READ|VM_PROT_WRITE);
+#endif
from += PAGE_SIZE;
to += PAGE_SIZE;
size -= PAGE_SIZE;