summaryrefslogtreecommitdiffstats
path: root/sys/kern/sys_process.c
diff options
context:
space:
mode:
authoralc <alc@FreeBSD.org>2002-07-12 17:21:22 +0000
committeralc <alc@FreeBSD.org>2002-07-12 17:21:22 +0000
commit19a21418a0fb18fd4d67c5a1a955e62500cffe2e (patch)
treebb18dcba0ee5140d0ea27015a7f06aefc149ba0d /sys/kern/sys_process.c
parent0f5d0637f1aafcf161d3768fe389821c6b30a617 (diff)
downloadFreeBSD-src-19a21418a0fb18fd4d67c5a1a955e62500cffe2e.zip
FreeBSD-src-19a21418a0fb18fd4d67c5a1a955e62500cffe2e.tar.gz
Lock accesses to the page queues.
Diffstat (limited to 'sys/kern/sys_process.c')
-rw-r--r--sys/kern/sys_process.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/sys/kern/sys_process.c b/sys/kern/sys_process.c
index f446406..c8cf8c4 100644
--- a/sys/kern/sys_process.c
+++ b/sys/kern/sys_process.c
@@ -268,7 +268,9 @@ proc_rwmem(struct proc *p, struct uio *uio)
/*
* Wire the page into memory
*/
+ vm_page_lock_queues();
vm_page_wire(m);
+ vm_page_unlock_queues();
/*
* We're done with tmap now.
@@ -290,7 +292,9 @@ proc_rwmem(struct proc *p, struct uio *uio)
/*
* release the page and the object
*/
+ vm_page_lock_queues();
vm_page_unwire(m, 1);
+ vm_page_unlock_queues();
vm_object_deallocate(object);
object = NULL;
OpenPOWER on IntegriCloud