summaryrefslogtreecommitdiff
path: root/static/openbsd/man9/uvm_vslock.9
diff options
context:
space:
mode:
authorJacob McDonnell <jacob@jacobmcdonnell.com>2026-04-25 14:02:27 -0400
committerJacob McDonnell <jacob@jacobmcdonnell.com>2026-04-25 14:02:27 -0400
commit6d8bdc65446a704d0750217efd05532fc641ea7d (patch)
tree8ae6d698b3c9801750a8b117b3842fb369872a3a /static/openbsd/man9/uvm_vslock.9
parent2f467bd7ff8f8db0dafa40426166491d7f57f368 (diff)
docs: OpenBSD Man Pages Added
Diffstat (limited to 'static/openbsd/man9/uvm_vslock.9')
-rw-r--r--static/openbsd/man9/uvm_vslock.973
1 files changed, 73 insertions, 0 deletions
diff --git a/static/openbsd/man9/uvm_vslock.9 b/static/openbsd/man9/uvm_vslock.9
new file mode 100644
index 00000000..b1bbb6d9
--- /dev/null
+++ b/static/openbsd/man9/uvm_vslock.9
@@ -0,0 +1,73 @@
+.\" $OpenBSD: uvm_vslock.9,v 1.2 2019/12/06 11:09:47 mpi Exp $
+.\" $NetBSD: uvm.9,v 1.14 2000/06/29 06:08:44 mrg Exp $
+.\"
+.\" Copyright (c) 1998 Matthew R. Green
+.\" All rights reserved.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\" notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\" notice, this list of conditions and the following disclaimer in the
+.\" documentation and/or other materials provided with the distribution.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
+.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
+.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+.\" BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+.\" LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
+.\" AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+.\" OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+.\" SUCH DAMAGE.
+.\"
+.Dd $Mdocdate: December 6 2019 $
+.Dt UVM_VSLOCK 9
+.Os
+.Sh NAME
+.Nm uvm_vslock ,
+.Nm uvm_vsunlock ,
+.Nm uvm_vslock_device ,
+.Nm uvm_vsunlock_device
+.Nd wire user memory for I/O
+.Sh SYNOPSIS
+.In uvm/uvm_extern.h
+.Ft void
+.Fn uvm_vslock "struct proc *p" "caddr_t addr" "size_t len" \
+ "vm_prot_t access_type"
+.Ft void
+.Fn uvm_vsunlock "struct proc *p" "caddr_t addr" "size_t len"
+.Ft int
+.Fn uvm_vslock_device "struct proc *p" "void *addr" "size_t len" \
+ "vm_prot_t access_type" "void **retp"
+.Ft void
+.Fn uvm_vsunlock_device "struct proc *p" "void *addr" "size_t len" "void *map"
+.Sh DESCRIPTION
+The
+.Fn uvm_vslock
+family of functions
+control the wiring and unwiring of pages for process
+.Fa p
+from
+.Fa addr
+to
+.Fa addr + len .
+The
+.Fa access_type
+argument is passed to
+.Xr uvm_fault 9 .
+.Pp
+.Fn uvm_vslock_device
+also checks if the pages are DMA reachable.
+When they aren't, it bounces their content into a newly created mapping
+returned in
+.Fa retp .
+.Fn uvm_vsunlock_device
+will release this memory mapping pointed by
+.Fa map .
+.Sh SEE ALSO
+.Xr uvm_fault 9