NAME
pmap_extract
,
pmap_extract_and_hold
—
map a virtual address to a physical
page
SYNOPSIS
#include
<sys/param.h>
#include <vm/vm.h>
#include <vm/pmap.h>
vm_paddr_t
pmap_extract
(pmap_t
pmap, vm_offset_t
va);
vm_paddr_t
pmap_extract_and_hold
(pmap_t
pmap, vm_offset_t
va, vm_prot_t
prot);
DESCRIPTION
Thepmap_extract
()
function maps a virtual address to a physical page. In certain situations,
callers may use pmap_extract_and_hold
() instead, to
ensure that the returned page is held.
The
pmap_extract_and_hold
()
function maps a virtual address to a physical page, and atomically holds the
returned page for use by the caller, only if the mapping permits the given
page protection.
IMPLEMENTATION NOTES
Currently, the page protection requested by the caller is not verified.
RETURN VALUES
The pmap_extract
() function will return
the physical page address associated with the virtual address
va inside the physical map pmap.
If the mapping does not exist, or if the pmap
parameter is NULL
, then NULL
will be returned.
The pmap_extract_and_hold
() function will
return the physical page address associated with the virtual address
va inside the physical map pmap.
If the mapping does not exist, the result is a no-op, and
NULL
will be returned.
SEE ALSO
AUTHORS
The pmap_extract_and_hold
() function was
implemented by Alan L. Cox
<alc@imimic.com>. This
manual page was written by Bruce M Simpson
<bms@spc.org>.