| PR_SET_MM_ARG_START(2const) | PR_SET_MM_ARG_START(2const) |
PR_SET_MM_ARG_START, PR_SET_MM_ARG_END, PR_SET_MM_ENV_START, PR_SET_MM_ENV_END - modify kernel memory map descriptor fields
Standard C library (libc, -lc)
#include <linux/prctl.h> /* Definition of PR_* constants */ #include <sys/prctl.h>
int prctl(PR_SET_MM, PR_SET_MM_ARG_START, unsigned long addr, 0L, 0L); int prctl(PR_SET_MM, PR_SET_MM_ARG_END, unsigned long addr, 0L, 0L); int prctl(PR_SET_MM, PR_SET_MM_ENV_START, unsigned long addr, 0L, 0L); int prctl(PR_SET_MM, PR_SET_MM_ENV_END, unsigned long addr, 0L, 0L);
The address passed with these calls should belong to a process stack area. Thus, the corresponding memory area must be readable, writable, and (depending on the kernel configuration) have the MAP_GROWSDOWN attribute set (see mmap(2)).
On success, 0 is returned. On error, -1 is returned, and errno is set to indicate the error.
Linux.
Linux 3.5.
| 2024-06-01 | Linux man-pages 6.9.1 |