diff options
author | jhb <jhb@FreeBSD.org> | 2001-06-20 00:48:20 +0000 |
---|---|---|
committer | jhb <jhb@FreeBSD.org> | 2001-06-20 00:48:20 +0000 |
commit | 3910f65aa276a42bb870032078b48e97a495de0f (patch) | |
tree | 14e8fdc68f6ae7f6fc728034f3327d2b05196aed /sys/vm/vm_pageout.c | |
parent | c355fb47d5d77dde5509dedef1f14c88260c5c31 (diff) | |
download | FreeBSD-src-3910f65aa276a42bb870032078b48e97a495de0f.zip FreeBSD-src-3910f65aa276a42bb870032078b48e97a495de0f.tar.gz |
Put the scheduler, vmdaemon, and pagedaemon kthreads back under Giant for
now. The proc locking isn't actually safe yet and won't be until the proc
locking is finished.
Diffstat (limited to 'sys/vm/vm_pageout.c')
-rw-r--r-- | sys/vm/vm_pageout.c | 17 |
1 files changed, 1 insertions, 16 deletions
diff --git a/sys/vm/vm_pageout.c b/sys/vm/vm_pageout.c index dd96cb2..e8389b1 100644 --- a/sys/vm/vm_pageout.c +++ b/sys/vm/vm_pageout.c @@ -1349,6 +1349,7 @@ vm_pageout() { int pass; + mtx_lock(&Giant); mtx_lock(&vm_mtx); /* @@ -1465,11 +1466,7 @@ vm_pageout() if (vm_pages_needed) cnt.v_pdwakeups++; splx(s); - mtx_unlock(&vm_mtx); - mtx_lock(&Giant); - mtx_lock(&vm_mtx); vm_pageout_scan(pass); - mtx_unlock(&Giant); vm_pageout_deficit = 0; } } @@ -1500,13 +1497,8 @@ vm_daemon() { struct proc *p; -#ifndef rlimlocked mtx_lock(&Giant); -#endif while (TRUE) { -#ifdef rlimlocked - mtx_lock(&Giant); -#endif mtx_lock(&vm_mtx); msleep(&vm_daemon_needed, &vm_mtx, PPAUSE, "psleep", 0); if (vm_pageout_req_swapout) { @@ -1515,13 +1507,6 @@ vm_daemon() vm_pageout_req_swapout = 0; } mtx_unlock(&vm_mtx); -#ifdef rlimlocked - /* - * XXX: we can't do this yet because Giant still protects - * the per-process resource limits that we check below. - */ - mtx_unlock(&Giant); -#endif /* * scan the processes for exceeding their rlimits or if * process is swapped out -- deactivate pages |