summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKonstantin Belousov <kib@FreeBSD.org>2016-11-06 13:35:20 +0000
committerKonstantin Belousov <kib@FreeBSD.org>2016-11-06 13:35:20 +0000
commit349f9cd8b4ab75d5317d59dfedfa7617842ce979 (patch)
tree417fb75b9817e67e2384886fac0fa8385685012a
parent82d527654cf7f4f00bb66a55bed1e6d74c71dde6 (diff)
Notes
-rw-r--r--sys/vm/vm_fault.c7
1 files changed, 2 insertions, 5 deletions
diff --git a/sys/vm/vm_fault.c b/sys/vm/vm_fault.c
index 904839a36d33..8f4fc70a4d6d 100644
--- a/sys/vm/vm_fault.c
+++ b/sys/vm/vm_fault.c
@@ -627,10 +627,8 @@ readrest:
*/
unlock_map(&fs);
- if (fs.object->type == OBJT_VNODE) {
- vp = fs.object->handle;
- if (vp == fs.vp)
- goto vnode_locked;
+ if (fs.object->type == OBJT_VNODE &&
+ (vp = fs.object->handle) != fs.vp) {
unlock_vp(&fs);
locked = VOP_ISLOCKED(vp);
@@ -653,7 +651,6 @@ readrest:
}
fs.vp = vp;
}
-vnode_locked:
KASSERT(fs.vp == NULL || !fs.map->system_map,
("vm_fault: vnode-backed object mapped by system map"));