ok? diff --git uvm/uvm_fault.c uvm/uvm_fault.c index 76f0708..76429dc 100644 --- uvm/uvm_fault.c +++ uvm/uvm_fault.c @@ -1936,11 +1936,7 @@ uvmfault_lookup(struct uvm_faultinfo *ufi, boolean_t write_lock) */ if (UVM_ET_ISSUBMAP(ufi->entry)) { tmpmap = ufi->entry->object.sub_map; - if (write_lock) { - vm_map_unlock(ufi->map); - } else { - vm_map_unlock_read(ufi->map); - } + uvmfault_unlockmaps(ufi, write_lock); ufi->map = tmpmap; continue; } -- 1.7.5
-- It's easier to fight for one's principles than to live up to them.