Home | History | Annotate | Download | only in uvm

Lines Matching refs:ufi

44 uvmfault_unlockmaps(struct uvm_faultinfo *ufi, bool write_locked)
47 * ufi can be NULL when this isn't really a fault,
51 if (ufi == NULL) {
56 uvmfault_update_stats(ufi);
59 vm_map_unlock(ufi->map);
61 vm_map_unlock_read(ufi->map);
72 uvmfault_unlockall(struct uvm_faultinfo *ufi, struct vm_amap *amap,
80 uvmfault_unlockmaps(ufi, false);
99 uvmfault_lookup(struct uvm_faultinfo *ufi, bool write_lock)
104 * init ufi values for lookup.
107 ufi->map = ufi->orig_map;
108 ufi->size = ufi->orig_size;
120 vm_map_lock(ufi->map);
122 vm_map_lock_read(ufi->map);
128 if (!uvm_map_lookup_entry(ufi->map, ufi->orig_rvaddr,
129 &ufi->entry)) {
130 uvmfault_unlockmaps(ufi, write_lock);
137 if (ufi->entry->end - ufi->orig_rvaddr < ufi->size)
138 ufi->size = ufi->entry->end - ufi->orig_rvaddr;
144 if (UVM_ET_ISSUBMAP(ufi->entry)) {
145 tmpmap = ufi->entry->object.sub_map;
147 vm_map_unlock(ufi->map);
149 vm_map_unlock_read(ufi->map);
151 ufi->map = tmpmap;
159 ufi->mapv = ufi->map->timestamp;
175 uvmfault_relock(struct uvm_faultinfo *ufi)
178 * ufi can be NULL when this isn't really a fault,
182 if (ufi == NULL) {
193 vm_map_lock_read(ufi->map);
194 if (ufi->mapv != ufi->map->timestamp) {
195 vm_map_unlock_read(ufi->map);