linux man page for vm_map_stack

Query: vm_map_stack

OS: linux

Section: 9

Format: Original Unix Latex Style Formatted with HTML and a Horizontal Scroll Bar

VM_MAP_STACK(9) 					   BSD Kernel Developer's Manual					   VM_MAP_STACK(9)

NAME
vm_map_stack, vm_map_growstack -- manage process stacks
SYNOPSIS
#include <sys/param.h> #include <vm/vm.h> #include <vm/vm_map.h> int vm_map_stack(vm_map_t map, vm_offset_t addrbos, vm_size_t max_ssize, vm_prot_t prot, vm_prot_t max, int cow); int vm_map_growstack(struct proc *p, vm_offset_t addr);
DESCRIPTION
The vm_map_stack() function maps a process stack for a new process image. The stack is mapped addrbos in map, with a maximum size of max_ssize. Copy-on-write flags passed in cow are also applied to the new mapping. Protection bits are supplied by prot and max. It is typically called by execve(2). The vm_map_growstack() function is responsible for growing a stack for the process p to the desired address addr, similar to the legacy sbrk(2) call.
IMPLEMENTATION NOTES
The vm_map_stack() function calls vm_map_insert(9) to create its mappings. The vm_map_growstack() function acquires the Giant lock, and the process lock on p, for the duration of the call.
RETURN VALUES
The vm_map_stack() function returns KERN_SUCCESS if the mapping was allocated successfully. Otherwise, if mapping the stack would exceed the process's VMEM resource limit, or if the specified bottom-of-stack address is out of range for the map, or if there is already a mapping at the address which would result, or if max_ssize could not be accommodated within the current mapping, KERN_NO_SPACE is returned. Other possible return values for this function are documented in vm_map_insert(9). The vm_map_growstack() function returns KERN_SUCCESS if addr is already mapped, or if the stack was grown successfully. It also returns KERN_SUCCESS if addr is outside the stack range; this is done in order to preserve compatibility with the deprecated grow() function previously located in the file vm_machdep.c.
SEE ALSO
vm_map(9), vm_map_insert(9)
AUTHORS
This manual page was written by Bruce M Simpson <bms@spc.org>.
BSD
July 19, 2003 BSD
Related Man Pages
vm_map_find(9) - debian
vm_map(9) - freebsd
vm_map_growstack(9) - freebsd
vm_map_unwire(9) - freebsd
vm_map_stack(9) - linux
Similar Topics in the Unix Linux Community
Please Donate to the Red Cross for Earthquake and Tsunami Relief in Japan
Answers to Recently Asked Questions about UNIX.COM
Don Cragun crossing 4500 thanks went unnoticed for more than a week - late congratulations!
UNIX.com End of Year (EOY) Report (2019)