VM_MAP_SUBMAP(9)

NAME
vm_map_submap - create a subordinate map

SYNOPSIS
#include <sys/param.h>
#include <vm/vm.h>
#include <vm/vm_map.h>
int
vm_map_submap(vm_map_t map, vm_offset_t start, vm_offset_t end, vm_map_t submap);

DESCRIPTION
The vm_map_submap() function marks the range bounded by start and end within the map map as being handled by a subordinate map sub_map.

It is generally called by the kernel memory allocator.

IMPLEMENTATION NOTES
This function is for internal use only.

Both maps must exist. The range must have been created with vm_map_find(9) previously.

No other operations may have been performed on this range before calling this function. Only the vm_fault() operation may be performed within this range after calling this function.

To remove a submapping, one must first remove the range from the parent map, and then destroy the sub_map. This procedure is not recommended.

RETURN VALUES
The vm_map_submap() function returns KERN_SUCCESS if successful.

Otherwise, it returns KERN_INVALID_ARGUMENT if the caller requested copy-on-write flags, or if the range specified for the sub-map was out of range for the parent map, or if a NULL backing object was specified.

SEE ALSO
vm_map(9), vm_map_find(9)

AUTHORS
This manual page was written by Bruce M Simpson <bms@spc.org>.