summaryrefslogtreecommitdiff
path: root/vm/vm_resident.c
diff options
context:
space:
mode:
Diffstat (limited to 'vm/vm_resident.c')
-rw-r--r--vm/vm_resident.c23
1 files changed, 12 insertions, 11 deletions
diff --git a/vm/vm_resident.c b/vm/vm_resident.c
index e3e34dc3..b5096e00 100644
--- a/vm/vm_resident.c
+++ b/vm/vm_resident.c
@@ -140,7 +140,7 @@ int vm_page_wire_count;
* pageout daemon.
*/
int vm_page_laundry_count = 0;
-int vm_page_external_pagedout = 0;
+int vm_page_external_laundry_count = 0;
/*
@@ -611,6 +611,7 @@ static void vm_page_init_template(vm_page_t m)
m->inactive = FALSE;
m->active = FALSE;
m->laundry = FALSE;
+ m->external_laundry = FALSE;
m->free = FALSE;
m->external = FALSE;
@@ -811,7 +812,7 @@ phys_addr_t vm_page_grab_phys_addr(void)
void vm_page_release(
vm_page_t mem,
boolean_t laundry,
- boolean_t external)
+ boolean_t external_laundry)
{
simple_lock(&vm_page_queue_free_lock);
if (mem->free)
@@ -825,20 +826,20 @@ void vm_page_release(
vm_pageout_resume();
}
}
- if (external) {
+ if (external_laundry) {
/*
- * If vm_page_external_pagedout is negative,
+ * If vm_page_external_laundry_count is negative,
* the pageout daemon isn't expecting to be
* notified.
*/
- if (vm_page_external_pagedout > 0) {
- vm_page_external_pagedout--;
- }
+ if (vm_page_external_laundry_count > 0) {
+ vm_page_external_laundry_count--;
- if (vm_page_external_pagedout == 0) {
- vm_pageout_resume();
+ if (vm_page_external_laundry_count == 0) {
+ vm_pageout_resume();
+ }
}
}
@@ -977,9 +978,9 @@ void vm_page_free(
vm_page_release_fictitious(mem);
} else {
boolean_t laundry = mem->laundry;
- boolean_t external = mem->external;
+ boolean_t external_laundry = mem->external_laundry;
vm_page_init(mem);
- vm_page_release(mem, laundry, external);
+ vm_page_release(mem, laundry, external_laundry);
}
}