aboutsummaryrefslogtreecommitdiff
path: root/sys/vm/vm_pageout.h
diff options
context:
space:
mode:
authorJeff Roberson <jeff@FreeBSD.org>2018-02-06 22:10:07 +0000
committerJeff Roberson <jeff@FreeBSD.org>2018-02-06 22:10:07 +0000
commite2068d0bcd95865d142f0657ed834146ddad9754 (patch)
treec718f937c03962e717d7260e38f7e5fba9c76936 /sys/vm/vm_pageout.h
parent1616767dfc210635ce16ea6e3659e3569be57515 (diff)
downloadsrc-e2068d0bcd95865d142f0657ed834146ddad9754.tar.gz
src-e2068d0bcd95865d142f0657ed834146ddad9754.zip
Use per-domain locks for vm page queue free. Move paging control from
global to per-domain state. Protect reservations with the free lock from the domain that they belong to. Refactor to make vm domains more of a first class object. Reviewed by: markj, kib, gallatin Tested by: pho Sponsored by: Netflix, Dell/EMC Isilon Differential Revision: https://reviews.freebsd.org/D14000
Notes
Notes: svn path=/head/; revision=328954
Diffstat (limited to 'sys/vm/vm_pageout.h')
-rw-r--r--sys/vm/vm_pageout.h9
1 files changed, 5 insertions, 4 deletions
diff --git a/sys/vm/vm_pageout.h b/sys/vm/vm_pageout.h
index 60ee00d9e820..0894cd1541aa 100644
--- a/sys/vm/vm_pageout.h
+++ b/sys/vm/vm_pageout.h
@@ -74,9 +74,7 @@
*/
extern int vm_page_max_wired;
-extern int vm_pageout_deficit;
extern int vm_pageout_page_count;
-extern bool vm_pages_needed;
#define VM_OOM_MEM 1
#define VM_OOM_SWAPZ 2
@@ -95,12 +93,15 @@ extern bool vm_pages_needed;
* Signal pageout-daemon and wait for it.
*/
-void pagedaemon_wait(int pri, const char *wmesg);
-void pagedaemon_wakeup(void);
+void pagedaemon_wait(int domain, int pri, const char *wmesg);
+void pagedaemon_wakeup(int domain);
#define VM_WAIT vm_wait()
#define VM_WAITPFAULT vm_waitpfault()
void vm_wait(void);
void vm_waitpfault(void);
+void vm_wait_domain(int domain);
+void vm_wait_min(void);
+void vm_wait_severe(void);
#ifdef _KERNEL
int vm_pageout_flush(vm_page_t *, int, int, int, int *, boolean_t *);