xref: /freebsd/share/man/man9/pmap_qenter.9 (revision fa9896e082a1046ff4fbc75fcba4d18d1f2efc19)
18019c643SBruce M Simpson.\"
28019c643SBruce M Simpson.\" Copyright (c) 2003 Bruce M Simpson <bms@spc.org>
38019c643SBruce M Simpson.\" All rights reserved.
48019c643SBruce M Simpson.\"
58019c643SBruce M Simpson.\" Redistribution and use in source and binary forms, with or without
68019c643SBruce M Simpson.\" modification, are permitted provided that the following conditions
78019c643SBruce M Simpson.\" are met:
88019c643SBruce M Simpson.\" 1. Redistributions of source code must retain the above copyright
98019c643SBruce M Simpson.\"    notice, this list of conditions and the following disclaimer.
108019c643SBruce M Simpson.\" 2. Redistributions in binary form must reproduce the above copyright
118019c643SBruce M Simpson.\"    notice, this list of conditions and the following disclaimer in the
128019c643SBruce M Simpson.\"    documentation and/or other materials provided with the distribution.
138019c643SBruce M Simpson.\"
148019c643SBruce M Simpson.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
158019c643SBruce M Simpson.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
168019c643SBruce M Simpson.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
178019c643SBruce M Simpson.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
188019c643SBruce M Simpson.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
198019c643SBruce M Simpson.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
208019c643SBruce M Simpson.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
218019c643SBruce M Simpson.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
228019c643SBruce M Simpson.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
238019c643SBruce M Simpson.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
248019c643SBruce M Simpson.\" SUCH DAMAGE.
258019c643SBruce M Simpson.\"
26*d266177aSConrad Meyer.Dd February 15, 2018
278019c643SBruce M Simpson.Dt PMAP_QENTER 9
28b4ca3754SRuslan Ermilov.Os
298019c643SBruce M Simpson.Sh NAME
308019c643SBruce M Simpson.Nm pmap_qenter ,
318019c643SBruce M Simpson.Nm pmap_qremove
328019c643SBruce M Simpson.Nd manage temporary kernel space mappings
338019c643SBruce M Simpson.Sh SYNOPSIS
348019c643SBruce M Simpson.In sys/param.h
358019c643SBruce M Simpson.In vm/vm.h
368019c643SBruce M Simpson.In vm/pmap.h
378019c643SBruce M Simpson.Ft void
388019c643SBruce M Simpson.Fn pmap_qenter "vm_offset_t sva" "vm_page_t *m" "int count"
398019c643SBruce M Simpson.Ft void
408019c643SBruce M Simpson.Fn pmap_qremove "vm_offset_t sva" "int count"
418019c643SBruce M Simpson.Sh DESCRIPTION
428019c643SBruce M SimpsonThe
438019c643SBruce M Simpson.Fn pmap_qenter
448019c643SBruce M Simpsonfunction accepts a linear array of
458019c643SBruce M Simpson.Fa count
468019c643SBruce M Simpsonpointers to wired pages
478019c643SBruce M Simpson.Fa *m ,
488019c643SBruce M Simpsonand enters each of these pages into the kernel virtual address (KVA) space,
498019c643SBruce M Simpsonbeginning at the address
508019c643SBruce M Simpson.Fa sva .
51*d266177aSConrad MeyerThe pages are mapped non-executable, if possible.
52*d266177aSConrad Meyer(For example, non-PAE i386 has no capability to map pages non-executable.)
538019c643SBruce M Simpson.Pp
548019c643SBruce M SimpsonThe
558019c643SBruce M Simpson.Fn pmap_qremove
568019c643SBruce M Simpsonfunction tears out a mapping from the kernel virtual address space,
578019c643SBruce M Simpsonbeginning at
588019c643SBruce M Simpson.Fa sva
598019c643SBruce M Simpsonand for
608019c643SBruce M Simpson.Fa count
618019c643SBruce M Simpsonpages.
628019c643SBruce M Simpson.Sh IMPLEMENTATION NOTES
638019c643SBruce M SimpsonThe
648019c643SBruce M Simpson.Fn pmap_qenter
658019c643SBruce M Simpsonfunction is intended for temporary mappings that do not require page
668019c643SBruce M Simpsonmodification or reference counting.
678019c643SBruce M SimpsonOld mappings are simply overwritten.
688019c643SBruce M SimpsonThe pages
698019c643SBruce M Simpson.Em must
708019c643SBruce M Simpsonbe wired into physical memory.
718019c643SBruce M Simpson.Pp
728019c643SBruce M SimpsonThe corresponding
738019c643SBruce M Simpson.Fn pmap_qremove
748019c643SBruce M Simpsonfunction is intended to remove such temporary mappings.
758019c643SBruce M Simpson.Sh SEE ALSO
768019c643SBruce M Simpson.Xr pmap 9
778019c643SBruce M Simpson.Sh AUTHORS
788019c643SBruce M SimpsonThis manual page was written by
798a7314fcSBaptiste Daroussin.An Bruce M Simpson Aq Mt bms@spc.org .
80