MUNMAP(2)

NAME
munmap - remove a mapping

SYNOPSIS
#include <sys/mman.h>
int
munmap(void *addr, size_t len);

DESCRIPTION
The munmap() system call deletes the mappings for the specified address range, and causes further references to addresses within the range to generate invalid memory references.

RETURN VALUES

ERRORS
munmap() will fail if:

[EINVAL]
    The addr and len parameters specify a region that would extend beyond the end of the address space, or some part of the region being unmapped is not part of the currently valid address space.

[EPERM]
    The addr and len parameters specify a region which contains at least one page marked immutable.

SEE ALSO
madvise(2), mimmutable(2), mlock(2), mlockall(2), mmap(2), mprotect(2), msync(2), getpagesize(3)

STANDARDS
When len is non-zero, the munmap() function conforms to p1003.1-2008.

HISTORY
The munmap() system call has been available since 4.3BSD Net/2.

CAVEATS
p1003.1-2008 specifies that munmap() shall fail with EINVAL if len is 0. OpenBSD performs no action in this case.