summaryrefslogtreecommitdiffstats
path: root/sys/vm/vm_object.c
diff options
context:
space:
mode:
authoralc <alc@FreeBSD.org>2002-07-27 23:20:32 +0000
committeralc <alc@FreeBSD.org>2002-07-27 23:20:32 +0000
commitd048dca979c1bebecefd36c13beb6bd29228dd53 (patch)
tree2be7447d17bab22996e719cdd2a90f87f82d95a6 /sys/vm/vm_object.c
parentb12dee0079f63017c916948344386fa0e0ad5676 (diff)
downloadFreeBSD-src-d048dca979c1bebecefd36c13beb6bd29228dd53.zip
FreeBSD-src-d048dca979c1bebecefd36c13beb6bd29228dd53.tar.gz
o Require that the page queues lock is held on entry to vm_pageout_clean()
and vm_pageout_flush(). o Acquire the page queues lock before calling vm_pageout_clean() or vm_pageout_flush().
Diffstat (limited to 'sys/vm/vm_object.c')
-rw-r--r--sys/vm/vm_object.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/sys/vm/vm_object.c b/sys/vm/vm_object.c
index 20c6d75..25c53ec 100644
--- a/sys/vm/vm_object.c
+++ b/sys/vm/vm_object.c
@@ -850,7 +850,7 @@ vm_object_page_collect_flush(vm_object_t object, vm_page_t p, int curgeneration,
return(0);
}
}
-
+ vm_page_lock_queues();
maxf = 0;
for(i = 1; i < vm_pageout_page_count; i++) {
vm_page_t tp;
@@ -934,6 +934,7 @@ vm_object_page_collect_flush(vm_object_t object, vm_page_t p, int curgeneration,
maxf = i - maxb - 1;
}
}
+ vm_page_unlock_queues();
return(maxf + 1);
}
OpenPOWER on IntegriCloud