diff options
author | alc <alc@FreeBSD.org> | 2008-01-03 07:34:34 +0000 |
---|---|---|
committer | alc <alc@FreeBSD.org> | 2008-01-03 07:34:34 +0000 |
commit | 545d26e30bb60df264b73543bf214c7e006f18fb (patch) | |
tree | 46a2b299e20f99257e0a9e31f02276471aed28a1 /sys/vm/vm_fault.c | |
parent | 9699ca07d2cae2224f351d0a332b8265c829f9a8 (diff) | |
download | FreeBSD-src-545d26e30bb60df264b73543bf214c7e006f18fb.zip FreeBSD-src-545d26e30bb60df264b73543bf214c7e006f18fb.tar.gz |
Add an access type parameter to pmap_enter(). It will be used to implement
superpage promotion.
Correct a style error in kmem_malloc(): pmap_enter()'s last parameter is
a Boolean.
Diffstat (limited to 'sys/vm/vm_fault.c')
-rw-r--r-- | sys/vm/vm_fault.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/sys/vm/vm_fault.c b/sys/vm/vm_fault.c index d2a8220..faa28da 100644 --- a/sys/vm/vm_fault.c +++ b/sys/vm/vm_fault.c @@ -888,7 +888,7 @@ readrest: * back on the active queue until later so that the pageout daemon * won't find it (yet). */ - pmap_enter(fs.map->pmap, vaddr, fs.m, prot, wired); + pmap_enter(fs.map->pmap, vaddr, fault_type, fs.m, prot, wired); if (((fault_flags & VM_FAULT_WIRE_MASK) == 0) && (wired == 0)) { vm_fault_prefault(fs.map->pmap, vaddr, fs.entry); } @@ -1177,9 +1177,10 @@ vm_fault_copy_entry(dst_map, src_map, dst_entry, src_entry) VM_OBJECT_UNLOCK(dst_object); /* - * Enter it in the pmap... + * Enter it in the pmap as a read and/or execute access. */ - pmap_enter(dst_map->pmap, vaddr, dst_m, prot, FALSE); + pmap_enter(dst_map->pmap, vaddr, prot & ~VM_PROT_WRITE, dst_m, + prot, FALSE); /* * Mark it no longer busy, and put it on the active list. |