vslock, vsunlock — lock/unlock user space addresses in memory
Contents
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.
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.
[EFAULT] Some portion of the indicated address range is not allocated. There was an error
faulting/mapping a page.
Debian August 29, 2012 VSLOCK(9)
Name
vslock, vsunlock — lock/unlock user space addresses in memory
Return Values
The vslock() function will return 0 on success, otherwise it will return one of the errors listed below.
Synopsis
#include<sys/param.h>#include<sys/proc.h>#include<vm/vm.h>#include<vm/vm_extern.h>intvslock(void*addr, size_tlen);
voidvsunlock(void*addr, size_tlen);
