Manpage logo

PR_SET_MM_START_CODE - modify kernel memory map descriptor fields

NAME  LIBRARY  SYNOPSIS  DESCRIPTION  RETURN VALUE  ERRORS  STANDARDS  HISTORY  SEE ALSO 

NAME

PR_SET_MM_START_CODE, PR_SET_MM_END_CODE − 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_CODE, unsigned long addr, 0L, 0L);
int prctl(PR_SET_MM, PR_SET_MM_END_CODE, unsigned long
addr, 0L, 0L);

DESCRIPTION

PR_SET_MM_START_CODE

Set the address above which the program text can run. The corresponding memory area must be readable and executable, but not writable or shareable (see mprotect(2) and mmap(2) for more information).

PR_SET_MM_END_CODE

Set the address below which the program text can run. The corresponding memory area must be readable and executable, but not writable 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)


Updated 2026-06-01 - jenkler.se | uex.se