NAME
vm_page_grab
—
returns a page from an
object
SYNOPSIS
#include
<sys/param.h>
#include <vm/vm.h>
#include <vm/vm_page.h>
vm_page_t
vm_page_grab
(vm_object_t
object, vm_pindex_t
pindex, int
allocflags);
DESCRIPTION
Thevm_page_grab
()
function returns the page at pindex from the given
object. If the page exists and is busy, vm_page_grab
()
will sleep while waiting for it. If the page does not exist, it is allocated.
The function sleeps until the allocation request can be satisfied.
The function requires the
object to be locked on entry, and returns with the
object locked. If the
vm_page_grab
()
function sleeps for any reason, the object lock is temporary dropped.
The
vm_page_grab
()
supports all of the flags supported by
vm_page_alloc(9). In addition,
vm_page_grab
() supports the following flags:
VM_ALLOC_IGN_SBUSY
- When waiting for the busy state of the existing page to drain, only test for exclusive busy; ignore the shared busy counter.
RETURN VALUES
The vm_page_grab
() always returns the
page.
SEE ALSO
AUTHORS
This manual page was written by Chad David <davidc@acns.ab.ca>.