/share/man/man9/vm_map_protect.9
https://bitbucket.org/freebsd/freebsd-head/ · Unknown · 93 lines · 93 code · 0 blank · 0 comment · 0 complexity · 512b49124943b8f11c954b548e1880df MD5 · raw file
- .\"
- .\" Copyright (c) 2003 Bruce M Simpson <bms@spc.org>
- .\" 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 AND CONTRIBUTORS ``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 OR CONTRIBUTORS 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.
- .\"
- .\" $FreeBSD$
- .\"
- .Dd July 19, 2003
- .Dt VM_MAP_PROTECT 9
- .Os
- .Sh NAME
- .Nm vm_map_protect
- .Nd apply protection bits to a virtual memory region
- .Sh SYNOPSIS
- .In sys/param.h
- .In vm/vm.h
- .In vm/vm_map.h
- .Ft int
- .Fo vm_map_protect
- .Fa "vm_map_t map" "vm_offset_t start" "vm_offset_t end" "vm_prot_t new_prot"
- .Fa "boolean_t set_max"
- .Fc
- .Sh DESCRIPTION
- The
- .Fn vm_map_protect
- function sets the protection bits of the address region bounded by
- .Fa start
- and
- .Fa end
- within the map
- .Fa map
- to
- .Fa new_prot .
- .Pp
- If
- .Fa set_max
- is TRUE,
- .Fa new_prot
- is treated as the new
- .Va max_protection
- setting for each underlying entry.
- Otherwise, only the
- .Va protection
- field is affected.
- .Pp
- The range MUST be contiguous, and MUST NOT contain sub-maps.
- .Sh IMPLEMENTATION NOTES
- The function acquires a lock on the
- .Fa map
- for the duration, by calling
- .Xr vm_map_lock 9 .
- .Sh RETURN VALUES
- The
- .Fn vm_map_protect
- function returns
- .Dv KERN_SUCCESS
- if the protection bits could be set successfully.
- .Pp
- If a sub-map entry was encountered in the range,
- .Dv KERN_INVALID_ARGUMENT
- is returned.
- If the value of
- .Fa new_prot
- would exceed
- .Va max_protection
- for an entry within the range,
- .Dv KERN_PROTECTION_FAILURE
- is returned.
- .Sh SEE ALSO
- .Xr vm_map 9
- .Sh AUTHORS
- This manual page was written by
- .An Bruce M Simpson Aq bms@spc.org .