.\" Copyright, the authors of the Linux man-pages project .\" .\" SPDX-License-Identifier: Linux-man-pages-copyleft .\" .TH PR_SET_MM_START_STACK 2const 2025-05-17 "Linux man-pages 6.16" .SH NAME PR_SET_MM_START_STACK \- modify kernel memory map descriptor fields .SH LIBRARY Standard C library .RI ( libc ,\~ \-lc ) .SH SYNOPSIS .nf .BR "#include " " /* Definition of " PR_* " constants */" .B #include .P .BI "int prctl(PR_SET_MM, PR_SET_MM_START_STACK, unsigned long " addr ", 0L, 0L);" .fi .SH DESCRIPTION Set the start address of the stack. The corresponding memory area must be readable and writable. .SH RETURN VALUE On success, 0 is returned. On error, \-1 is returned, and .I errno is set to indicate the error. .SH ERRORS .TP .B EINVAL .I addr is greater than .B TASK_SIZE (the limit on the size of the user address space for this architecture). .TP .B EINVAL The permissions of the corresponding memory area are not as required. .SH STANDARDS Linux. .SH HISTORY Linux 3.3. .\" commit 028ee4be34a09a6d48bdf30ab991ae933a7bc036 .SH SEE ALSO .BR prctl (2), .BR PR_SET_MM (2const)