diff options
author | alc <alc@FreeBSD.org> | 2003-09-12 07:07:49 +0000 |
---|---|---|
committer | alc <alc@FreeBSD.org> | 2003-09-12 07:07:49 +0000 |
commit | 76fcb264a0e0f5a09371c6617c166472bd775658 (patch) | |
tree | 5f4a5020e45c74f9697b892acbfe9e8f748c0816 /sys/sparc64 | |
parent | 60909145e3ca1c6c165667bea0e781fb1526585d (diff) | |
download | FreeBSD-src-76fcb264a0e0f5a09371c6617c166472bd775658.zip FreeBSD-src-76fcb264a0e0f5a09371c6617c166472bd775658.tar.gz |
Add a new parameter to pmap_extract_and_hold() that is needed to eliminate
Giant from vmapbuf().
Idea from: tegge
Diffstat (limited to 'sys/sparc64')
-rw-r--r-- | sys/sparc64/sparc64/pmap.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/sys/sparc64/sparc64/pmap.c b/sys/sparc64/sparc64/pmap.c index f532152..81dd685 100644 --- a/sys/sparc64/sparc64/pmap.c +++ b/sys/sparc64/sparc64/pmap.c @@ -622,10 +622,11 @@ pmap_extract(pmap_t pm, vm_offset_t va) /* * Atomically extract and hold the physical page with the given - * pmap and virtual address pair. + * pmap and virtual address pair if that mapping permits the given + * protection. */ vm_page_t -pmap_extract_and_hold(pmap_t pmap, vm_offset_t va) +pmap_extract_and_hold(pmap_t pmap, vm_offset_t va, vm_prot_t prot) { vm_paddr_t pa; vm_page_t m; |