SYNOPSISIn sys/param.h In sys/proc.h In vm/vm.h In vm/vm_extern.h Ft int Fn vslock void *addr size_t len Ft void Fn vsunlock void *addr size_t len
DESCRIPTIONThe Fn vslock and Fn 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 Fa addr to the nearest preceding page boundary, and by rounding up Fa addr + Fa len to the next page boundary. The process context to use for this operation is taken from the global variable curproc
RETURN VALUESThe Fn vslock function will return 0 on success, otherwise it will return one of the errors listed below.
ERRORSThe Fn vslock function will fail if:
- Bq Er EINVAL
- The Fa addr and Fa len parameters specify a memory range that wraps around the end of the machine address space.
- Bq Er ENOMEM
- The size of the specified address range exceeds the system limit on locked memory.
- Bq Er EFAULT
- Some portion of the indicated address range is not allocated. There was an error faulting/mapping a page.