:man| Alphabetical   Categories   About us 
 
VSLOCK (9) | Kernel routines | Unix Manual Pages | :man

NAME

vslock, vsunlock - lock/unlock user space addresses in memory

CONTENTS

Synopsis
Description
Return Values
Errors

SYNOPSIS


.In sys/param.h
.In sys/proc.h
.In vm/vm.h
.In vm/vm_extern.h int vslock "void *addr" "size_t len" void vsunlock "void *addr" "size_t len"

DESCRIPTION

The vslock and vsunlock functions respectively lock and unlock a range of addresses belonging to the currently running process into memory. The actual amount of memory locked is a multiple of the machine’s page size. The starting page number is computed by truncating addr to the nearest preceding page boundary, and by rounding up addr + len to the next page boundary. The process context to use for this operation is taken from the global variable curproc.

RETURN VALUES

The vslock function will return 0 on success, otherwise it will return one of the errors listed below.

ERRORS

The vslock function will fail if:
[EINVAL]
The addr and len parameters specify a memory range that wraps around the end of the machine address space.
[ENOMEM]
The size of the specified address range exceeds the system limit on locked memory.
[ENOMEM]
Locking the requested address range would cause the process to exceed its per-process locked memory limit.
[EFAULT]
Some portion of the indicated address range is not allocated. There was an error faulting/mapping a page.

August 10, 2004 VSLOCK (9)
shtml">manServer 1.07 from vslock.9 using doc macros.


Share this page

     Follow us

Facebook Twitter Google+ LinkedIn


 
Created by Blin Media, 2008-2013