summaryrefslogtreecommitdiff
path: root/sys/vm/vm_pageout.h
diff options
context:
space:
mode:
Diffstat (limited to 'sys/vm/vm_pageout.h')
-rw-r--r--sys/vm/vm_pageout.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/sys/vm/vm_pageout.h b/sys/vm/vm_pageout.h
index d975d8006fd3..a80605967ec8 100644
--- a/sys/vm/vm_pageout.h
+++ b/sys/vm/vm_pageout.h
@@ -86,6 +86,8 @@ simple_lock_data_t vm_pages_needed_lock;
inline static void vm_wait() {
extern struct proc *curproc, *pageproc;
extern int vm_pageout_pages_needed;
+ int s;
+ s = splhigh();
if (curproc == pageproc) {
vm_pageout_pages_needed = 1;
tsleep((caddr_t) &vm_pageout_pages_needed, PSWP, "vmwait", 0);
@@ -94,6 +96,7 @@ inline static void vm_wait() {
wakeup((caddr_t) &vm_pages_needed);
tsleep((caddr_t) &vm_page_free_count, PVM, "vmwait", 0);
}
+ splx(s);
}