From 55c57827e99f067cb8f715b1be78d4822005388c Mon Sep 17 00:00:00 2001 From: Samuel Thibault Date: Wed, 14 Oct 2009 00:31:30 +0200 Subject: Fix return with lock held vm/vm_map.c (vm_map_copy_overwrite): Unlock dst_map before returning. --- vm/vm_map.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'vm/vm_map.c') diff --git a/vm/vm_map.c b/vm/vm_map.c index 63438d3d..2c8ad604 100644 --- a/vm/vm_map.c +++ b/vm/vm_map.c @@ -2146,8 +2146,10 @@ start_pass_1: * the copy cannot be interrupted. */ - if (interruptible && contains_permanent_objects) + if (interruptible && contains_permanent_objects) { + vm_map_unlock(dst_map); return(KERN_FAILURE); /* XXX */ + } /* * XXXO If there are no permanent objects in the destination, -- cgit v1.2.3