Provided by: freebsd-manpages_12.2-2_all bug

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

       The  vm_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

       vm_page_alloc(9)

AUTHORS

       This manual page was written by Chad David <davidc@acns.ab.ca>.

Debian                                           August 23, 2013                                 VM_PAGE_GRAB(9)