logo
Free, Micro AI Code Reviews That Run on Git Commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, Micro AI Code Reviews That Run on Git Commit | Product Hunt git-lrc - Free, Micro AI Code Reviews That Run on Git Commit | Product Hunt

vm_page_free, vm_page_free_toq, vm_page_free_zero, vm_page_try_to_free — free a page

Authors

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

Debian                                            July 24, 2001                                  VM_PAGE_FREE(9)

Description

       The  vm_page_free_toq()  function moves a page into the free queue, and disassociates it from its object.
       If the page is held, wired, already free, or its busy count is not zero, the system will panic.   If  the
       PG_ZERO  flag  is  set on the page, it is placed at the end of the free queue; otherwise, it is placed at
       the front.

       If the page's object is of type OBJT_VNODE and it is the  last  page  associated  with  the  object,  the
       underlying vnode may be freed.

       The  vm_page_free()  and  vm_page_free_zero() functions both call vm_page_free_toq() to actually free the
       page, but vm_page_free_zero() sets the PG_ZERO flag and vm_page_free() clears the PG_ZERO flag  prior  to
       the call to vm_page_free_toq().

       The  vm_page_try_to_free()  function verifies that the page is not held, wired, busy or dirty, and if so,
       marks the page as busy, drops any protection that may be set on the page, and frees it.

Name

       vm_page_free, vm_page_free_toq, vm_page_free_zero, vm_page_try_to_free — free a page

Return Values

vm_page_try_to_free() returns 1 if it is able to free the page; otherwise, 0 is returned.

See Also

vm_page_busy(9), vm_page_hold(9), vm_page_wire(9)

Synopsis

#include<sys/param.h>#include<vm/vm.h>#include<vm/vm_page.h>voidvm_page_free(vm_page_tm);

       voidvm_page_free_toq(vm_page_tm);

       voidvm_page_free_zero(vm_page_tm);

       intvm_page_try_to_free(vm_page_tm);

See Also