summaryrefslogtreecommitdiffstats
path: root/sys/vm
diff options
context:
space:
mode:
authorjhb <jhb@FreeBSD.org>2003-04-22 20:01:56 +0000
committerjhb <jhb@FreeBSD.org>2003-04-22 20:01:56 +0000
commitd5cf4c5275f6e664075d1972274e99a697bd6823 (patch)
treeea348fa385a95b324d1a7caec25bb96bb7f3d226 /sys/vm
parent82ad2123a7b313d71d0658f06af9b38db418b946 (diff)
downloadFreeBSD-src-d5cf4c5275f6e664075d1972274e99a697bd6823.zip
FreeBSD-src-d5cf4c5275f6e664075d1972274e99a697bd6823.tar.gz
Prefer the proc lock to sched_lock when testing PS_INMEM now that it is
safe to do so.
Diffstat (limited to 'sys/vm')
-rw-r--r--sys/vm/vm_fault.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/sys/vm/vm_fault.c b/sys/vm/vm_fault.c
index d2d7372..d8f2409 100644
--- a/sys/vm/vm_fault.c
+++ b/sys/vm/vm_fault.c
@@ -917,15 +917,16 @@ readrest:
}
vm_page_wakeup(fs.m);
vm_page_unlock_queues();
- mtx_lock_spin(&sched_lock);
- if (curproc && (curproc->p_sflag & PS_INMEM) && curproc->p_stats) {
+
+ PROC_LOCK(curproc);
+ if ((curproc->p_sflag & PS_INMEM) && curproc->p_stats) {
if (hardfault) {
curproc->p_stats->p_ru.ru_majflt++;
} else {
curproc->p_stats->p_ru.ru_minflt++;
}
}
- mtx_unlock_spin(&sched_lock);
+ PROC_UNLOCK(curproc);
/*
* Unlock everything, and return
OpenPOWER on IntegriCloud