summaryrefslogtreecommitdiffstats
path: root/sys/vm/vm_init.c
diff options
context:
space:
mode:
Diffstat (limited to 'sys/vm/vm_init.c')
-rw-r--r--sys/vm/vm_init.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/sys/vm/vm_init.c b/sys/vm/vm_init.c
index ae336e1..35e4676 100644
--- a/sys/vm/vm_init.c
+++ b/sys/vm/vm_init.c
@@ -73,6 +73,7 @@
#include <sys/lock.h>
#include <sys/proc.h>
#include <sys/systm.h>
+#include <sys/mutex.h>
#include <vm/vm.h>
#include <vm/vm_object.h>
@@ -96,16 +97,20 @@ SYSINIT(vm_mem, SI_SUB_VM, SI_ORDER_FIRST, vm_mem_init, NULL)
* The start and end address of physical memory is passed in.
*/
+struct mtx vm_mtx;
+
/* ARGSUSED*/
static void
vm_mem_init(dummy)
void *dummy;
{
+
/*
* Initializes resident memory structures. From here on, all physical
* memory is accounted for, and we use only virtual addresses.
*/
-
+ mtx_init(&vm_mtx, "vm", MTX_DEF);
+ mtx_lock(&vm_mtx);
vm_set_page_size();
virtual_avail = vm_page_startup(avail_start, avail_end, virtual_avail);
@@ -118,4 +123,5 @@ vm_mem_init(dummy)
kmem_init(virtual_avail, virtual_end);
pmap_init(avail_start, avail_end);
vm_pager_init();
+ mtx_unlock(&vm_mtx);
}
OpenPOWER on IntegriCloud