VM_FAULT_PREFAULT(9)

NAME
vm_fault_prefault - cluster page faults into a process's address space

SYNOPSIS
#include <sys/param.h>
#include <vm/vm.h>
#include <vm/pmap.h>
void
vm_fault_prefault(pmap_t pmap, vm_offset_t addra, vm_map_entry_t entry);

DESCRIPTION
The vm_fault_prefault() function provides a means of clustering pagefaults into a process's address space. It operates upon the physical map pmap. The entry argument specifies the entry to be prefaulted; the addra argument specifies the beginning of the mapping in the process's virtual address space.

It is typically called by vm_fault() after the first page fault. It benefits the execve(2) system call by eliminating repetitive calls to vm_fault(), which would otherwise be made to bring the process's executable pages into physical memory.

IMPLEMENTATION NOTES
This is a machine-independent function which calls the machine-dependent pmap_is_prefaultable(9) helper function to determine if a page may be prefaulted into physical memory.

SEE ALSO
execve(2), pmap_is_prefaultable(9)

AUTHORS
This manual page was written by Bruce M Simpson <bms@spc.org>.