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