summaryrefslogtreecommitdiffstats
path: root/sys/vm/vm_pageout.c
diff options
context:
space:
mode:
authorwes <wes@FreeBSD.org>2003-03-31 21:09:57 +0000
committerwes <wes@FreeBSD.org>2003-03-31 21:09:57 +0000
commitca1839cb9191762cd4c49990a18f78fd9798c4d1 (patch)
treef83c7306439c7baa61bbd7bf0a72fa416688f426 /sys/vm/vm_pageout.c
parent35e71f4a050af9100a931d737080b2818efa8c63 (diff)
downloadFreeBSD-src-ca1839cb9191762cd4c49990a18f78fd9798c4d1.zip
FreeBSD-src-ca1839cb9191762cd4c49990a18f78fd9798c4d1.tar.gz
Add a facility allowing processes to inform the VM subsystem they are
critical and should not be killed when pageout is looking for more memory pages in all the wrong places. Reviewed by: arch@ Sponsored by: St. Bernard Software
Diffstat (limited to 'sys/vm/vm_pageout.c')
-rw-r--r--sys/vm/vm_pageout.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/sys/vm/vm_pageout.c b/sys/vm/vm_pageout.c
index dab4ae2..8c07be2 100644
--- a/sys/vm/vm_pageout.c
+++ b/sys/vm/vm_pageout.c
@@ -1184,9 +1184,10 @@ rescan0:
if (PROC_TRYLOCK(p) == 0)
continue;
/*
- * if this is a system process, skip it
+ * If this is a system or protected process, skip it.
*/
if ((p->p_flag & P_SYSTEM) || (p->p_pid == 1) ||
+ (p->p_flag & P_PROTECTED) ||
((p->p_pid < 48) && (vm_swap_size != 0))) {
PROC_UNLOCK(p);
continue;
OpenPOWER on IntegriCloud