pragmatism first

VSLOCK(9FREEBSD) - Linux manual page online | System kernel interfaces

Lock/unlock user space addresses in memory.

August 29, 2012
VSLOCK(9) BSD Kernel Developer's Manual VSLOCK(9)


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


#include <sys/param.h> #include <sys/proc.h> #include <vm/vm.h> #include <vm/vm_extern.h> int vslock(void *addr, size_t len); void vsunlock(void *addr, size_t len);


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 truncat‐ ing 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 vari‐ able curproc.


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


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.
BSD August 29, 2012 BSD
This manual Reference Other manuals
vslock(9freebsd) referred by bus_dma(9freebsd) | bus_dma_tag_create(9freebsd) | bus_dma_tag_destroy(9freebsd) | bus_dmamap_create(9freebsd) | bus_dmamap_destroy(9freebsd) | bus_dmamap_load(9freebsd) | bus_dmamap_load_bio(9freebsd) | bus_dmamap_load_ccb(9freebsd) | bus_dmamap_load_mbuf(9freebsd) | bus_dmamap_load_mbuf_sg(9freebsd) | bus_dmamap_load_uio(9freebsd) | bus_dmamap_sync(9freebsd) | bus_dmamap_unload(9freebsd) | bus_dmamem_alloc(9freebsd) | bus_dmamem_free(9freebsd) | busdma(9freebsd) | vsunlock(9freebsd)
refer to
Download raw manual
Index BSD Kernel Developer's Manual (+1909) BSD (+3984) № 9 (+1939)
Go top