PR_SET_MM_START_BRK(2const)

PR_SET_MM_START_BRK2const

Modify kernel memory map descriptor fields

Usage

#include <linux/prctl.h>  /* Definition of PR_* constants */
#include <sys/prctl.h>

int prctl(PR_SET_MM, PR_SET_MM_START_BRK, unsigned long addr, 0L, 0L);

Library

Standard C library (libc, -lc)

Overview

Set the address above which the program heap can be expanded with brk(2) call.

The address must be greater than the ending address of the current program data segment. In addition, the combined size of the resulting heap and the data segment can't exceed the RLIMIT_DATA resource limit (see setrlimit(2)).

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

addr is less than or equal to the end of the data segment or specifies a value that would cause the RLIMIT_DATA resource limit to be exceeded.

Releases

2 releases since Debian 13 (Trixie); the text changed 1 time.

  1. 13
  2. Arch

Standards

Linux.

History

Linux 3.3.

From man-pages 6.19-1 in Arch Linux 2026-11-01. Parsed by carta from the page's man source.