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
Mon, Mar 2, 5:21 PM (9 h, 12 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
29165203
Default Alt Text
D35485.id106924.diff (699 B)

Event Timeline