aboutsummaryrefslogtreecommitdiff
path: root/vm/vm_pageout.c
diff options
context:
space:
mode:
authorRichard Braun <rbraun@sceen.net>2016-03-11 21:47:03 +0100
committerRichard Braun <rbraun@sceen.net>2016-03-11 21:47:03 +0100
commit6cc11e068af0293a67ca855c8d33e6decdabf2b2 (patch)
treecc5ba82e619822c4ab51189150e364ec978d3f05 /vm/vm_pageout.c
parent844fb104f5c0c50b94cbf6ab8fb2e97caa4bc7b3 (diff)
parentc774e89387a43d737abbdd99781a294c1cceebb2 (diff)
downloadgnumach-6cc11e068af0293a67ca855c8d33e6decdabf2b2.tar.gz
gnumach-6cc11e068af0293a67ca855c8d33e6decdabf2b2.tar.bz2
gnumach-6cc11e068af0293a67ca855c8d33e6decdabf2b2.zip
Merge remote-tracking branch 'remotes/origin/rbraun/vm_cache_policy'
Finally ;-).
Diffstat (limited to 'vm/vm_pageout.c')
-rw-r--r--vm/vm_pageout.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/vm/vm_pageout.c b/vm/vm_pageout.c
index f06e8f8e..72f96cbf 100644
--- a/vm/vm_pageout.c
+++ b/vm/vm_pageout.c
@@ -748,7 +748,12 @@ void vm_pageout_scan(void)
reclaim_page:
vm_page_free(m);
vm_page_unlock_queues();
- vm_object_unlock(object);
+
+ if (vm_object_collectable(object))
+ vm_object_collect(object);
+ else
+ vm_object_unlock(object);
+
continue;
}