diff options
author | Artur Grabowski <art@cvs.openbsd.org> | 1999-09-03 18:02:30 +0000 |
---|---|---|
committer | Artur Grabowski <art@cvs.openbsd.org> | 1999-09-03 18:02:30 +0000 |
commit | 2a4977388d8ca2cef9e73cd2e0bbdaef83b4a180 (patch) | |
tree | ccbef58b3ebc3a9038f61326e627ca943e3cb79e /sys/arch/m68k | |
parent | 49aebb598146d4d57b680055b575b4923212427c (diff) |
Change the pmap_enter api to pass down an argument that indicates
the access type that caused this mapping. This is to simplify pmaps
with mod/ref emulation (none for the moment) and in some cases speed
up pmap_is_{referenced,modified}.
At the same time, clean up some mappings that had too high protection.
XXX - the access type is incorrect in old vm, it's only used by uvm and MD code.
The actual use of this in pmap_enter implementations is not in this commit.
Diffstat (limited to 'sys/arch/m68k')
-rw-r--r-- | sys/arch/m68k/m68k/mappedcopy.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/sys/arch/m68k/m68k/mappedcopy.c b/sys/arch/m68k/m68k/mappedcopy.c index e2adb099ddd..420170fff2d 100644 --- a/sys/arch/m68k/m68k/mappedcopy.c +++ b/sys/arch/m68k/m68k/mappedcopy.c @@ -1,4 +1,4 @@ -/* $OpenBSD: mappedcopy.c,v 1.1 1997/02/10 11:11:51 downsj Exp $ */ +/* $OpenBSD: mappedcopy.c,v 1.2 1999/09/03 18:01:04 art Exp $ */ /* $NetBSD: mappedcopy.c,v 1.1 1997/02/02 06:54:10 thorpej Exp $ */ /* @@ -111,7 +111,8 @@ mappedcopyin(fromp, top, count) if (upa == 0) panic("mappedcopyin: null page frame"); len = min(count, (PAGE_SIZE - off)); - pmap_enter(pmap_kernel(), kva, upa, VM_PROT_READ, TRUE); + pmap_enter(pmap_kernel(), kva, upa, VM_PROT_READ, TRUE, + VM_PROT_READ); if (len == PAGE_SIZE && alignable && off == 0) copypage((caddr_t)kva, top); else @@ -162,7 +163,8 @@ mappedcopyout(fromp, top, count) panic("mappedcopyout: null page frame"); len = min(count, (PAGE_SIZE - off)); pmap_enter(pmap_kernel(), kva, upa, - VM_PROT_READ|VM_PROT_WRITE, TRUE); + VM_PROT_READ|VM_PROT_WRITE, TRUE, + VM_PROT_READ|VM_PROT_WRITE); if (len == PAGE_SIZE && alignable && off == 0) copypage(fromp, (caddr_t)kva); else |