summaryrefslogtreecommitdiffstats
path: root/sys/vm
diff options
context:
space:
mode:
authordyson <dyson@FreeBSD.org>1997-06-15 23:33:52 +0000
committerdyson <dyson@FreeBSD.org>1997-06-15 23:33:52 +0000
commit2e39fb736ccaaf828955cb4d7f689a5eab32feb1 (patch)
tree05f8a7f64c9fd2ea626e55d46735d39bc54d91a5 /sys/vm
parent3c54eb0587d99c6434081b4d6d36824c70d2a358 (diff)
downloadFreeBSD-src-2e39fb736ccaaf828955cb4d7f689a5eab32feb1.zip
FreeBSD-src-2e39fb736ccaaf828955cb4d7f689a5eab32feb1.tar.gz
Fix a reference problem with maps. Only appears to manifest itself when
sharing address spaces.
Diffstat (limited to 'sys/vm')
-rw-r--r--sys/vm/vm_map.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/sys/vm/vm_map.c b/sys/vm/vm_map.c
index beb4c40..26e2318 100644
--- a/sys/vm/vm_map.c
+++ b/sys/vm/vm_map.c
@@ -61,7 +61,7 @@
* any improvements or extensions that they make and grant Carnegie the
* rights to redistribute these changes.
*
- * $Id: vm_map.c,v 1.75 1997/04/07 07:16:05 peter Exp $
+ * $Id: vm_map.c,v 1.76 1997/04/13 01:48:35 dyson Exp $
*/
/*
@@ -2454,8 +2454,12 @@ RetryLookup:;
if (lockmgr(&share_map->lock, LK_EXCLUPGRADE,
(void *)0, curproc)) {
+
+ vm_map_unlock_read(map);
+
if (share_map != map)
vm_map_unlock_read(map);
+
goto RetryLookup;
}
vm_object_shadow(
OpenPOWER on IntegriCloud