summaryrefslogtreecommitdiffstats
path: root/sys
diff options
context:
space:
mode:
authoralc <alc@FreeBSD.org>2002-06-12 08:15:52 +0000
committeralc <alc@FreeBSD.org>2002-06-12 08:15:52 +0000
commite39b056b5de4e0d64c4f5c3b4bfb11064143ecf0 (patch)
treed0107c060ac4efef408d3da527d96929bbb1a773 /sys
parent561391ed94bcedfeab5d4cf77078dc6d8f2c9e59 (diff)
downloadFreeBSD-src-e39b056b5de4e0d64c4f5c3b4bfb11064143ecf0.zip
FreeBSD-src-e39b056b5de4e0d64c4f5c3b4bfb11064143ecf0.tar.gz
o Acquire and release Giant in vm_map_unlock_and_wait().
Submitted by: tegge
Diffstat (limited to 'sys')
-rw-r--r--sys/vm/vm_map.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/sys/vm/vm_map.c b/sys/vm/vm_map.c
index 9d182c1..fadf7cc 100644
--- a/sys/vm/vm_map.c
+++ b/sys/vm/vm_map.c
@@ -429,11 +429,13 @@ _vm_map_clear_recursive(vm_map_t map, const char *file, int line)
static __inline int
vm_map_unlock_and_wait(vm_map_t map, boolean_t user_wait)
{
+ int retval;
- GIANT_REQUIRED;
+ mtx_lock(&Giant);
vm_map_unlock(map);
-
- return (tsleep(&map->root, PVM, "vmmapw", 0));
+ retval = tsleep(&map->root, PVM, "vmmapw", 0);
+ mtx_unlock(&Giant);
+ return (retval);
}
/*
OpenPOWER on IntegriCloud