Scroll to navigation

PR_SET_VMA(2const) PR_SET_VMA(2const)

NAME

PR_SET_VMA - set an attribute for virtual memory areas

LIBRARY

Standard C library (libc, -lc)

SYNOPSIS

#include <linux/prctl.h>  /* Definition of PR_* constants */
#include <sys/prctl.h>
int prctl(PR_SET_VMA, long attr, unsigned long addr, unsigned long size,
          const char *_Nullable val);

DESCRIPTION

Sets an attribute specified in attr for virtual memory areas starting from the address specified in addr and spanning the size specified in size. val specifies the value of the attribute to be set.

Note that assigning an attribute to a virtual memory area might prevent it from being merged with adjacent virtual memory areas due to the difference in that attribute's value.

Currently, attr must be one of:

Set a name for anonymous virtual memory areas. val should be a pointer to a null-terminated string containing the name. The name length including null byte cannot exceed 80 bytes. If val is NULL, the name of the appropriate anonymous virtual memory areas will be reset. The name can contain only printable ascii characters (isprint(3)), except '[', ']', '\', '$', and '`'.

RETURN VALUE

On success, 0 is returned. On error, -1 is returned, and errno is set to indicate the error.

ERRORS

attr is not a valid attribute.
addr is an invalid address.

STANDARDS

Linux.

HISTORY

Linux 5.17.

SEE ALSO

prctl(2)

2024-06-15 Linux man-pages (unreleased)