Provided by: manpages-dev_6.9.1-1_all bug

NAME

       PR_SET_MM_START_DATA, PR_SET_MM_END_DATA - 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, PR_SET_MM_START_DATA, unsigned long addr, 0L, 0L);
       int prctl(PR_SET_MM, PR_SET_MM_END_DATA, unsigned long addr, 0L, 0L);

DESCRIPTION

       PR_SET_MM_START_DATA
              Set  the  address  above which initialized and uninitialized (bss) data are placed.
              The corresponding memory area must be readable and writable, but not executable  or
              shareable.

       PR_SET_MM_END_DATA
              Set  the  address  below which initialized and uninitialized (bss) data are placed.
              The corresponding memory area must be readable and writable, but not executable  or
              shareable.

RETURN VALUE

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

ERRORS

       EINVAL addr is greater than TASK_SIZE (the limit on the size of the user address space for
              this architecture).

       EINVAL The permissions of the corresponding memory area are not as required.

STANDARDS

       Linux.

HISTORY

       Linux 3.3.

SEE ALSO

       prctl(2)