PR_SET_MM_START_CODE, PR_SET_MM_END_CODE - modify kernel memory map descriptor fields
Contents
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.
Errors
EINVALaddr 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.
History
Linux 3.3.
Library
Standard C library (libc, -lc)
Name
PR_SET_MM_START_CODE, PR_SET_MM_END_CODE - modify kernel memory map descriptor fields
Return Value
On success, 0 is returned. On error, -1 is returned, and errno is set to indicate the error.
See Also
prctl(2) Linux man-pages 6.9.1 2024-06-01 PR_SET_MM_START_CODE(2const)
Standards
Linux.
Synopsis
#include<linux/prctl.h> /* Definition of PR_* constants */
#include<sys/prctl.h>intprctl(PR_SET_MM,PR_SET_MM_START_CODE,unsignedlongaddr,0L,0L);intprctl(PR_SET_MM,PR_SET_MM_END_CODE,unsignedlongaddr,0L,0L);