Lines Matching refs:srcmap
2727 * UVM_EXTRACT_REMOVE: remove mappings from srcmap
2738 uvm_map_extract(struct vm_map *srcmap, vaddr_t start, vsize_t len,
2749 UVMHIST_CALLARGS(maphist,"(srcmap=%#jx,start=%#jx, len=%#jx",
2750 (uintptr_t)srcmap, start, len, 0);
2793 vm_map_lock(srcmap);
2795 if (uvm_map_lookup_entry(srcmap, start, &entry)) {
2816 UVM_MAP_CLIP_START(srcmap, entry, start);
2817 SAVE_HINT(srcmap, srcmap->hint, entry->prev);
2832 /* save values from srcmap for step 6 */
2841 while (entry->start < end && entry != &srcmap->header) {
2845 UVM_MAP_CLIP_END(srcmap, entry, end);
2849 amap_copy(srcmap, entry,
2927 (entry->next == &srcmap->header ||
2950 if (srcmap == dstmap || vm_map_lock_try(dstmap) == true) {
2954 if (srcmap != dstmap)
2965 * step 6: traverse the srcmap a second time to do the following:
2973 /* purge possible stale hints from srcmap */
2975 SAVE_HINT(srcmap, srcmap->hint, orig_entry->prev);
2976 if (srcmap->first_free != &srcmap->header &&
2977 srcmap->first_free->start >= start)
2978 srcmap->first_free = orig_entry->prev;
2985 while (entry->start < end && entry != &srcmap->header) {
2990 pmap_copy(dstmap->pmap, srcmap->pmap,
3002 pmap_remove(srcmap->pmap, entry->start,
3007 uvm_map_entry_unlink(srcmap, oldentry);
3018 pmap_update(srcmap->pmap);
3025 if (copy_ok && srcmap != dstmap)
3038 vm_map_unlock(srcmap);
3064 vm_map_unlock(srcmap);