Manpages

VM_MAP_SUBMAP(9) BSD Kernel Developer’s Manual 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 [AT] spc.org>.

BSD July 19, 2003 BSD