diff options
author | bms <bms@FreeBSD.org> | 2003-10-04 01:30:01 +0000 |
---|---|---|
committer | bms <bms@FreeBSD.org> | 2003-10-04 01:30:01 +0000 |
commit | 4ea755a59dbc0d7f72310fa26475efadd644dfa9 (patch) | |
tree | 88590d1855db109df265db1dbf73edf00a3f14b8 /share | |
parent | b1691aebe4218b5dedfc2dac5620bc1e02226f72 (diff) | |
download | FreeBSD-src-4ea755a59dbc0d7f72310fa26475efadd644dfa9.zip FreeBSD-src-4ea755a59dbc0d7f72310fa26475efadd644dfa9.tar.gz |
Update the pmap(9) documentation to reflect the movement of pmap_prefault()
to the machine-independent VM layer, as per alc's recent commit.
Add a definition for the new pmap_is_prefaultable() helper function.
Diffstat (limited to 'share')
-rw-r--r-- | share/man/man9/Makefile | 6 | ||||
-rw-r--r-- | share/man/man9/pmap.9 | 2 | ||||
-rw-r--r-- | share/man/man9/pmap_is_prefaultable.9 | 56 | ||||
-rw-r--r-- | share/man/man9/vm_fault_prefault.9 | 71 |
4 files changed, 132 insertions, 3 deletions
diff --git a/share/man/man9/Makefile b/share/man/man9/Makefile index 5f2a497..b7ba33e 100644 --- a/share/man/man9/Makefile +++ b/share/man/man9/Makefile @@ -62,9 +62,10 @@ MAN= BUF_LOCK.9 BUF_LOCKFREE.9 BUF_LOCKINIT.9 BUF_REFCNT.9 \ physio.9 printf.9 pseudofs.9 psignal.9 \ pmap.9 pmap_activate.9 pmap_addr_hint.9 pmap_change_wiring.9 \ pmap_clear_modify.9 pmap_copy.9 pmap_enter.9 pmap_extract.9 \ - pmap_growkernel.9 pmap_init.9 pmap_is_modified.9 pmap_map.9 \ + pmap_growkernel.9 pmap_init.9 pmap_is_modified.9 \ + pmap_is_prefaultable.9 pmap_map.9 \ pmap_mincore.9 pmap_object_init_pt.9 pmap_page_exists_quick.9 \ - pmap_page_protect.9 pmap_pinit.9 pmap_prefault.9 pmap_qenter.9 \ + pmap_page_protect.9 pmap_pinit.9 pmap_qenter.9 \ pmap_release.9 pmap_remove.9 pmap_zero_page.9 \ random.9 resettodr.9 resource_int_value.9 resource_query_string.9 \ rtalloc.9 rtentry.9 runqueue.9 random_harvest.9 rijndael.9 \ @@ -81,6 +82,7 @@ MAN= BUF_LOCK.9 BUF_LOCKFREE.9 BUF_LOCKINIT.9 BUF_REFCNT.9 \ vfsconf.9 \ vget.9 vgone.9 vhold.9 vinvalbuf.9 \ vflush.9 \ + vm_fault_prefault.9 \ vm_map.9 \ vm_map_check_protection.9 vm_map_clean.9 vm_map_create.9 \ vm_map_delete.9 vm_map_find.9 vm_map_findspace.9 vm_map_inherit.9 \ diff --git a/share/man/man9/pmap.9 b/share/man/man9/pmap.9 index 464e5cf..5ea1754 100644 --- a/share/man/man9/pmap.9 +++ b/share/man/man9/pmap.9 @@ -95,6 +95,7 @@ Each implementation is expected to maintain the statistics in this structure. .Xr pmap_init 9 , .Xr pmap_init2 9 , .Xr pmap_is_modified 9 , +.Xr pmap_is_prefaultable 9 , .Xr pmap_map 9 , .Xr pmap_mincore 9 , .Xr pmap_object_init_pt 9 , @@ -103,7 +104,6 @@ Each implementation is expected to maintain the statistics in this structure. .Xr pmap_pinit 9 , .Xr pmap_pinit0 9 , .Xr pmap_pinit2 9 , -.Xr pmap_prefault 9 , .Xr pmap_protect 9 , .Xr pmap_qenter 9 , .Xr pmap_qremove 9 , diff --git a/share/man/man9/pmap_is_prefaultable.9 b/share/man/man9/pmap_is_prefaultable.9 new file mode 100644 index 0000000..2fe2f06 --- /dev/null +++ b/share/man/man9/pmap_is_prefaultable.9 @@ -0,0 +1,56 @@ +.\" +.\" Copyright (c) 2003 Bruce M Simpson <bms@spc.org> +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.\" $FreeBSD$ +.\" +.Dd July 21, 2003 +.Dt PMAP_IS_PREFAULTABLE 9 +.Sh NAME +.Nm pmap_is_prefaultable +.Nd determine if a page may be prefaulted +.Sh SYNOPSIS +.In sys/param.h +.In vm/vm.h +.In vm/pmap.h +.Ft boolean_t +.Fn pmap_is_prefaultable "pmap_t pmap" "vm_offset_t va" +.Sh DESCRIPTION +The +.Fn pmap_is_prefaultable +function provides a means of determining if the page residing at +virtual address +.Fa va +in the physical map +.Fa pmap +may be pre-faulted into main memory. +.Pp +This is a helper function which is called by +.Fn vm_fault_prefault . +.Sh SEE ALSO +.Xr pmap 9 , +.Xr vm_fault_prefault 9 +.Sh AUTHORS +This manual page was written by +.An Bruce M Simpson Aq bms@spc.org . diff --git a/share/man/man9/vm_fault_prefault.9 b/share/man/man9/vm_fault_prefault.9 new file mode 100644 index 0000000..55a18a4 --- /dev/null +++ b/share/man/man9/vm_fault_prefault.9 @@ -0,0 +1,71 @@ +.\" +.\" Copyright (c) 2003 Bruce M Simpson <bms@spc.org> +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.\" $FreeBSD$ +.\" +.Dd July 21, 2003 +.Dt VM_FAULT_PREFAULT 9 +.Sh NAME +.Nm vm_fault_prefault +.Nd cluster page faults into a process's address space +.Sh SYNOPSIS +.In sys/param.h +.In vm/vm.h +.In vm/pmap.h +.Ft void +.Fn vm_map_prefault "pmap_t pmap" "vm_offset_t addra" "vm_map_entry_t entry" +.Sh DESCRIPTION +The +.Fn vm_map_prefault +function provides a means of clustering pagefaults into a process's +address space. +It operates upon the physical map +.Fa pmap . +The +.Fa entry +argument specifies the entry to be prefaulted; the +.Fa addra +argument specifies the beginning of the mapping in the process's virtual +address space. +.Pp +It is typically called by +.Fn vm_fault +after the first page fault. +It benefits the +.Fn exec +system call by eliminating repetitive calls to +.Fn vm_fault , +which would otherwise be made to bring the process's executable pages +into physical memory. +.Sh IMPLEMENTATION NOTES +This is a machine-independent function which calls the machine-dependent +.Fn pmap_is_prefaultable +helper function to determine if a page may be prefaulted into main memory. +.Sh SEE ALSO +.Xr execve 2 , +.Xr pmap_is_prefaultable 9 +.Sh AUTHORS +This manual page was written by +.An Bruce M Simpson Aq bms@spc.org . |