1*8f128fcdSmpi.\" $OpenBSD: uvm_fault.9,v 1.1 2019/12/05 15:14:28 mpi Exp $ 2*8f128fcdSmpi.\" $NetBSD: uvm.9,v 1.14 2000/06/29 06:08:44 mrg Exp $ 3*8f128fcdSmpi.\" 4*8f128fcdSmpi.\" Copyright (c) 1998 Matthew R. Green 5*8f128fcdSmpi.\" All rights reserved. 6*8f128fcdSmpi.\" 7*8f128fcdSmpi.\" Redistribution and use in source and binary forms, with or without 8*8f128fcdSmpi.\" modification, are permitted provided that the following conditions 9*8f128fcdSmpi.\" are met: 10*8f128fcdSmpi.\" 1. Redistributions of source code must retain the above copyright 11*8f128fcdSmpi.\" notice, this list of conditions and the following disclaimer. 12*8f128fcdSmpi.\" 2. Redistributions in binary form must reproduce the above copyright 13*8f128fcdSmpi.\" notice, this list of conditions and the following disclaimer in the 14*8f128fcdSmpi.\" documentation and/or other materials provided with the distribution. 15*8f128fcdSmpi.\" 16*8f128fcdSmpi.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR 17*8f128fcdSmpi.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES 18*8f128fcdSmpi.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 19*8f128fcdSmpi.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, 20*8f128fcdSmpi.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 21*8f128fcdSmpi.\" BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 22*8f128fcdSmpi.\" LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED 23*8f128fcdSmpi.\" AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, 24*8f128fcdSmpi.\" OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 25*8f128fcdSmpi.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 26*8f128fcdSmpi.\" SUCH DAMAGE. 27*8f128fcdSmpi.\" 28*8f128fcdSmpi.Dd $Mdocdate: December 5 2019 $ 29*8f128fcdSmpi.Dt UVM_FAULT 9 30*8f128fcdSmpi.Os 31*8f128fcdSmpi.Sh NAME 32*8f128fcdSmpi.Nm uvm_fault 33*8f128fcdSmpi.Nd page fault handling 34*8f128fcdSmpi.Sh SYNOPSIS 35*8f128fcdSmpi.In sys/param.h 36*8f128fcdSmpi.In uvm/uvm.h 37*8f128fcdSmpi.Ft int 38*8f128fcdSmpi.Fn uvm_fault "vm_map_t orig_map" "vaddr_t vaddr" "vm_fault_t fault_type" "vm_prot_t access_type" 39*8f128fcdSmpi.Sh DESCRIPTION 40*8f128fcdSmpiThe 41*8f128fcdSmpi.Fn uvm_fault 42*8f128fcdSmpifunction is the main entry point for faults. 43*8f128fcdSmpiIt takes 44*8f128fcdSmpi.Fa orig_map 45*8f128fcdSmpias the map the fault originated in, a 46*8f128fcdSmpi.Fa vaddr 47*8f128fcdSmpioffset into the map the fault occurred, 48*8f128fcdSmpi.Fa fault_type 49*8f128fcdSmpidescribing the type of fault, and 50*8f128fcdSmpi.Fa access_type 51*8f128fcdSmpidescribing the type of access requested. 52*8f128fcdSmpi.Fn uvm_fault 53*8f128fcdSmpireturns a standard errno. 54*8f128fcdSmpi.Sh SEE ALSO 55*8f128fcdSmpi.Xr pmap 9 56