mirror of
https://git.hardenedbsd.org/hardenedbsd/HardenedBSD.git
synced 2025-01-11 17:04:19 +01:00
Slightly improve the markup.
This commit is contained in:
parent
58af32166f
commit
1772ac3f49
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=131642
@ -50,9 +50,9 @@ is responsible for managing hardware-dependent objects such as page tables,
|
||||
address maps, TLBs, etc.
|
||||
.Pp
|
||||
Machine-dependent code must provide the header file
|
||||
.Em <machine/pmap.h> .
|
||||
.In machine/pmap.h .
|
||||
This file contains the definition of the
|
||||
.Dv pmap
|
||||
.Vt pmap
|
||||
structure:
|
||||
.Bd -literal -offset indent
|
||||
struct pmap {
|
||||
@ -66,7 +66,7 @@ This header file may also define other data structures used by the
|
||||
implementation.
|
||||
.Pp
|
||||
The header file
|
||||
.Em <vm/pmap.h>
|
||||
.In vm/pmap.h
|
||||
defines a structure for tracking
|
||||
.Nm
|
||||
statistics (see below).
|
||||
@ -79,11 +79,11 @@ struct pmap_statistics {
|
||||
.Ed
|
||||
.Pp
|
||||
The implementation's
|
||||
.Vt struct pmap
|
||||
.Vt "struct pmap"
|
||||
must contain an instance of this structure having the name
|
||||
.Va pm_stats ,
|
||||
and it must be updated by the implementation after each relevant
|
||||
.Nm pmap
|
||||
.Nm
|
||||
operation.
|
||||
.Sh SEE ALSO
|
||||
.Xr pmap 9 ,
|
||||
|
@ -48,7 +48,7 @@ of
|
||||
bytes.
|
||||
.Sh IMPLEMENTATION NOTES
|
||||
This function is typically called on behalf of
|
||||
.Fn mmap .
|
||||
.Xr mmap 2 .
|
||||
.Sh RETURN VALUES
|
||||
If the implementation can use the address unchanged, it will simply
|
||||
return
|
||||
|
@ -44,10 +44,11 @@ function changes the wiring attribute for the page at virtual address
|
||||
in the physical map
|
||||
.Fa pmap .
|
||||
A wired page gets its name from being
|
||||
.Sq wired
|
||||
.Dq wired
|
||||
into the system page tables so that it will not be paged out.
|
||||
.Pp
|
||||
The mapping must already exist in the pmap.
|
||||
The mapping must already exist in the
|
||||
.Fa pmap .
|
||||
If
|
||||
.Fa wired
|
||||
is
|
||||
|
@ -43,14 +43,14 @@
|
||||
The
|
||||
.Fn pmap_clear_modify
|
||||
function clears the
|
||||
.Sq modified
|
||||
.Dq modified
|
||||
bit on the physical page
|
||||
.Fa m .
|
||||
.Pp
|
||||
The
|
||||
.Fn pmap_clear_reference
|
||||
function clears the
|
||||
.Sq referenced
|
||||
.Dq referenced
|
||||
bit on the physical page
|
||||
.Fa m .
|
||||
.Sh SEE ALSO
|
||||
|
@ -36,8 +36,10 @@
|
||||
.In vm/vm.h
|
||||
.In vm/pmap.h
|
||||
.Ft void
|
||||
.Fn pmap_copy "pmap_t dst_pmap" "pmap_t src_pmap" "vm_offset_t dst_addr" \
|
||||
"vm_size_t len" "vm_offset_t src_addr"
|
||||
.Fo pmap_copy
|
||||
.Fa "pmap_t dst_pmap" "pmap_t src_pmap" "vm_offset_t dst_addr"
|
||||
.Fa "vm_size_t len" "vm_offset_t src_addr"
|
||||
.Fc
|
||||
.Ft void
|
||||
.Fn pmap_copy_page "vm_page_t src" "vm_page_t dst"
|
||||
.Sh DESCRIPTION
|
||||
|
@ -35,8 +35,10 @@
|
||||
.In vm/vm.h
|
||||
.In vm/pmap.h
|
||||
.Ft void
|
||||
.Fn pmap_enter "pmap_t pmap" "vm_offset_t va" "vm_page_t p" "vm_prot_t prot" \
|
||||
"boolean_t wired"
|
||||
.Fo pmap_enter
|
||||
.Fa "pmap_t pmap" "vm_offset_t va" "vm_page_t p" "vm_prot_t prot"
|
||||
.Fa "boolean_t wired"
|
||||
.Fc
|
||||
.Sh DESCRIPTION
|
||||
The
|
||||
.Fn pmap_enter
|
||||
|
@ -58,7 +58,7 @@ Currently, the page protection requested by the caller is not verified.
|
||||
In the
|
||||
.Fn pmap_extract_and_hold
|
||||
function, the
|
||||
.Dv Giant
|
||||
.Va Giant
|
||||
lock is held for the duration of the call to ensure that only a single
|
||||
caller is present.
|
||||
.Sh RETURN VALUES
|
||||
@ -71,7 +71,11 @@ inside the physical map
|
||||
.Fa pmap .
|
||||
If the mapping does not exist, or if the
|
||||
.Fa pmap
|
||||
parameter is NULL, then NULL will be returned.
|
||||
parameter is
|
||||
.Dv NULL ,
|
||||
then
|
||||
.Dv NULL
|
||||
will be returned.
|
||||
.Pp
|
||||
The
|
||||
.Fn pmap_extract_and_hold
|
||||
@ -80,7 +84,9 @@ virtual address
|
||||
.Fa va
|
||||
inside the physical map
|
||||
.Fa pmap .
|
||||
If the mapping does not exist, the result is a no-op, and NULL will
|
||||
If the mapping does not exist, the result is a no-op, and
|
||||
.Dv NULL
|
||||
will
|
||||
be returned.
|
||||
.Sh SEE ALSO
|
||||
.Xr mutex 9 ,
|
||||
|
@ -49,7 +49,7 @@ functions return information about physical pages.
|
||||
The
|
||||
.Fn pmap_is_modified
|
||||
function returns the status of the
|
||||
.Sq "page modified"
|
||||
.Dq "page modified"
|
||||
bit for the physical page
|
||||
.Fa m .
|
||||
.Pp
|
||||
|
@ -47,7 +47,7 @@ in the physical map
|
||||
may be pre-faulted into main memory.
|
||||
.Pp
|
||||
This is a helper function which is called by
|
||||
.Fn vm_fault_prefault .
|
||||
.Xr vm_fault_prefault 9 .
|
||||
.Sh SEE ALSO
|
||||
.Xr pmap 9 ,
|
||||
.Xr vm_fault_prefault 9
|
||||
|
@ -35,8 +35,9 @@
|
||||
.In vm/vm.h
|
||||
.In vm/pmap.h
|
||||
.Ft vm_offset_t
|
||||
.Fn pmap_map "vm_offset_t *virt" "vm_paddr_t start" "vm_paddr_t end" \
|
||||
"int prot"
|
||||
.Fo pmap_map
|
||||
.Fa "vm_offset_t *virt" "vm_paddr_t start" "vm_paddr_t end" "int prot"
|
||||
.Fc
|
||||
.Sh DESCRIPTION
|
||||
The
|
||||
.Fn pmap_map
|
||||
|
@ -44,7 +44,7 @@ function determines if the page at the virtual address
|
||||
in the physical map
|
||||
.Fa pmap
|
||||
is resident in physical memory.
|
||||
It is the machine-dependent interface used by
|
||||
It is the machine-dependent interface used by the
|
||||
.Xr mincore 2
|
||||
system call.
|
||||
.Sh RETURN VALUES
|
||||
@ -53,7 +53,7 @@ a mask of flags is returned,
|
||||
whose meaning is documented in
|
||||
.Xr mincore 2 ;
|
||||
otherwise,
|
||||
.Ql 0
|
||||
0
|
||||
is returned.
|
||||
.Pp
|
||||
The
|
||||
@ -64,7 +64,7 @@ must be mapped into the
|
||||
.Fa pmap .
|
||||
If any error occurs, the machine-dependent implementation should
|
||||
return
|
||||
.Ql 0 .
|
||||
0.
|
||||
.Sh SEE ALSO
|
||||
.Xr mincore 2 ,
|
||||
.Xr pmap 9
|
||||
|
@ -35,8 +35,10 @@
|
||||
.In vm/vm.h
|
||||
.In vm/pmap.h
|
||||
.Ft void
|
||||
.Fn pmap_object_init_pt "pmap_t pmap" "vm_offset_t addr" "vm_object_t object" \
|
||||
"vm_pindex_t pindex" "vm_size_t size" "int limit"
|
||||
.Fo pmap_object_init_pt
|
||||
.Fa "pmap_t pmap" "vm_offset_t addr" "vm_object_t object"
|
||||
.Fa "vm_pindex_t pindex" "vm_size_t size" "int limit"
|
||||
.Fc
|
||||
.Sh DESCRIPTION
|
||||
The
|
||||
.Fn pmap_object_init_pt
|
||||
|
@ -38,8 +38,9 @@
|
||||
.Ft void
|
||||
.Fn pmap_page_protect "vm_page_t m" "vm_prot_t prot"
|
||||
.Ft void
|
||||
.Fn pmap_protect "pmap_t pmap" "vm_offset_t sva" "vm_offset_t eva" \
|
||||
"vm_prot_t pr"
|
||||
.Fo pmap_protect
|
||||
.Fa "pmap_t pmap" "vm_offset_t sva" "vm_offset_t eva" "vm_prot_t pr"
|
||||
.Fc
|
||||
.Sh DESCRIPTION
|
||||
The
|
||||
.Fn pmap_page_protect
|
||||
|
@ -55,10 +55,10 @@ entirely within a single page.
|
||||
The
|
||||
.Fn pmap_zero_page_idle
|
||||
interface is used by the
|
||||
.Em vm_pagezero
|
||||
.Nm vm_pagezero
|
||||
process.
|
||||
The system-wide
|
||||
.Fa Giant
|
||||
.Va Giant
|
||||
lock should not be required to be held in order to call this interface.
|
||||
.Sh IMPLEMENTATION NOTES
|
||||
This function is required to be implemented for each architecture supported by
|
||||
|
Loading…
Reference in New Issue
Block a user