From 41c67e12bdcdc0ce3aacd49d1207ecbe3841e7a8 Mon Sep 17 00:00:00 2001 From: Matthew Dillon Date: Fri, 12 Feb 1999 20:42:19 +0000 Subject: [PATCH] Minor optimization to madvise() MADV_FREE to make page as freeable as possible without actually unmapping it from the process. As of now, I declare madvise() on OBJT_DEFAULT/OBJT_SWAP objects to be 'working and complete'. --- sys/vm/vm_object.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/sys/vm/vm_object.c b/sys/vm/vm_object.c index 250f7276a69d..cf4e6b1ed483 100644 --- a/sys/vm/vm_object.c +++ b/sys/vm/vm_object.c @@ -61,7 +61,7 @@ * any improvements or extensions that they make and grant Carnegie the * rights to redistribute these changes. * - * $Id: vm_object.c,v 1.148 1999/02/08 19:00:15 dillon Exp $ + * $Id: vm_object.c,v 1.149 1999/02/12 09:51:43 dillon Exp $ */ /* @@ -844,9 +844,15 @@ vm_object_madvise(object, pindex, count, advise) * Specifically, we do not try to actually free * the page now nor do we try to put it in the * cache (which would cause a page fault on reuse). + * + * But we do make the page is freeable as we + * can without actually taking the step of unmapping + * it. */ pmap_clear_modify(VM_PAGE_TO_PHYS(m)); m->dirty = 0; + m->act_count = 0; + vm_page_deactivate(m); } } }