dwww Home | Manual pages | Find package

PR_SET_MM(2const)                                             PR_SET_MM(2const)

NAME
       PR_SET_MM - modify kernel memory map descriptor fields

LIBRARY
       Standard C library (libc, -lc)

SYNOPSIS
       #include <linux/prctl.h>  /* Definition of PR_* constants */
       #include <sys/prctl.h>

       int prctl(PR_SET_MM, long op, ...);

DESCRIPTION
       Modify  certain  kernel  memory  map  descriptor  fields  of the calling
       process.  Usually these fields are set by the kernel and dynamic  loader
       (see ld.so(8) for more information) and a regular application should not
       use this feature.  However, there are cases, such as self-modifying pro-
       grams,  where  a  program  might find it useful to change its own memory
       map.

       The calling process must  have  the  CAP_SYS_RESOURCE  capability.   The
       value in op is one of the options below.

       PR_SET_MM_START_CODE
       PR_SET_MM_END_CODE
       PR_SET_MM_START_DATA
       PR_SET_MM_END_DATA
       PR_SET_MM_START_STACK
       PR_SET_MM_START_BRK
       PR_SET_MM_BRK
       PR_SET_MM_ARG_START
       PR_SET_MM_ARG_END
       PR_SET_MM_ENV_START
       PR_SET_MM_ENV_END
       PR_SET_MM_AUXV
       PR_SET_MM_EXE_FILE
       PR_SET_MM_MAP
       PR_SET_MM_MAP_SIZE

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

ERRORS
       EINVAL op is not a valid value.

       EPERM  The caller does not have the CAP_SYS_RESOURCE capability.

STANDARDS
       Linux.

HISTORY
       Linux 3.3.

       Before Linux 3.10, this feature is available only if the kernel is built
       with the CONFIG_CHECKPOINT_RESTORE option enabled.

SEE ALSO
       prctl(2),   PR_SET_MM_START_CODE(2const),    PR_SET_MM_END_CODE(2const),
       PR_SET_MM_START_DATA(2const),                PR_SET_MM_END_DATA(2const),
       PR_SET_MM_START_STACK(2const),              PR_SET_MM_START_BRK(2const),
       PR_SET_MM_BRK(2const),                      PR_SET_MM_ARG_START(2const),
       PR_SET_MM_ARG_END(2const),                  PR_SET_MM_ENV_START(2const),
       PR_SET_MM_ENV_END(2const),                   PR_SET_MM_EXE_FILE(2const),
       PR_SET_MM_MAP(2const), PR_SET_MM_MAP_SIZE(2const)

Linux man-pages 6.9.1              2024-06-01                 PR_SET_MM(2const)

Generated by dwww version 1.16 on Tue Dec 9 00:13:54 CET 2025.