VM_PAGE_HOLD(9) MidnightBSD Kernel Developer’s Manual VM_PAGE_HOLD(9)

NAME

vm_page_hold, vm_page_unhold — update a page’s hold count

SYNOPSIS

#include <sys/param.h>
#include <vm/vm.h>
#include <vm/vm_page.h>

void

vm_page_hold(vm_page_t m);

void

vm_page_unhold(vm_page_t m);

DESCRIPTION

The vm_page_hold() function increases the hold count on a page. This prevents the page daemon from freeing the page.

vm_page_hold() should only be used for very temporary wiring of a page, as that page will not be considered for paging or reallocation for as long as its hold count is greater than zero. Also note that while wired pages are removed from whatever queue they are on, vm_page_hold() does not affect the location of the page. If it is on a queue prior to the call, it will still be there afterward.

If the page needs to be held for a long period of time, vm_page_wire(9) should be used.

vm_page_unhold() function reduces the hold count on a page. If the hold count is zero it is possible that the page will be freed by the page daemon.

SEE ALSO

vm_page_unwire(9), vm_page_wire(9)

AUTHORS

This manual page was written by Chad David 〈davidc@acns.ab.ca〉.

MidnightBSD 0.3 July 13, 2001 MidnightBSD 0.3