Page MenuHomeFreeBSD

D35485.id106924.diff
No OneTemporary

D35485.id106924.diff

Index: sys/vm/vm_fault.c
===================================================================
--- sys/vm/vm_fault.c
+++ sys/vm/vm_fault.c
@@ -2132,7 +2132,6 @@
break;
}
}
- VM_OBJECT_WUNLOCK(dst_object);
/*
* Enter it in the pmap. If a wired, copy-on-write
@@ -2147,14 +2146,15 @@
* backing pages.
*/
if (vm_page_all_valid(dst_m)) {
+ VM_OBJECT_WUNLOCK(dst_object);
pmap_enter(dst_map->pmap, vaddr, dst_m, prot,
access | (upgrade ? PMAP_ENTER_WIRED : 0), 0);
+ VM_OBJECT_WLOCK(dst_object);
}
/*
* Mark it no longer busy, and put it on the active list.
*/
- VM_OBJECT_WLOCK(dst_object);
if (upgrade) {
if (src_m != dst_m) {

File Metadata

Mime Type
text/plain
Expires
Sat, Oct 5, 3:03 PM (1 h, 48 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
13651385
Default Alt Text
D35485.id106924.diff (699 B)

Event Timeline