vm_pageout.c (43138) | vm_pageout.c (43748) |
---|---|
1/* 2 * Copyright (c) 1991 Regents of the University of California. 3 * All rights reserved. 4 * Copyright (c) 1994 John S. Dyson 5 * All rights reserved. 6 * Copyright (c) 1994 David Greenman 7 * All rights reserved. 8 * --- 51 unchanged lines hidden (view full) --- 60 * Software Distribution Coordinator or Software.Distribution@CS.CMU.EDU 61 * School of Computer Science 62 * Carnegie Mellon University 63 * Pittsburgh PA 15213-3890 64 * 65 * any improvements or extensions that they make and grant Carnegie the 66 * rights to redistribute these changes. 67 * | 1/* 2 * Copyright (c) 1991 Regents of the University of California. 3 * All rights reserved. 4 * Copyright (c) 1994 John S. Dyson 5 * All rights reserved. 6 * Copyright (c) 1994 David Greenman 7 * All rights reserved. 8 * --- 51 unchanged lines hidden (view full) --- 60 * Software Distribution Coordinator or Software.Distribution@CS.CMU.EDU 61 * School of Computer Science 62 * Carnegie Mellon University 63 * Pittsburgh PA 15213-3890 64 * 65 * any improvements or extensions that they make and grant Carnegie the 66 * rights to redistribute these changes. 67 * |
68 * $Id: vm_pageout.c,v 1.133 1999/01/24 01:33:22 dillon Exp $ | 68 * $Id: vm_pageout.c,v 1.134 1999/01/24 06:04:52 dillon Exp $ |
69 */ 70 71/* 72 * The proverbial page-out daemon. 73 */ 74 75#include "opt_vm.h" 76#include <sys/param.h> --- 496 unchanged lines hidden (view full) --- 573 bigobj = NULL; 574 575 /* 576 * first, search out the biggest object, and try to free pages from 577 * that. 578 */ 579 tmpe = map->header.next; 580 while (tmpe != &map->header) { | 69 */ 70 71/* 72 * The proverbial page-out daemon. 73 */ 74 75#include "opt_vm.h" 76#include <sys/param.h> --- 496 unchanged lines hidden (view full) --- 573 bigobj = NULL; 574 575 /* 576 * first, search out the biggest object, and try to free pages from 577 * that. 578 */ 579 tmpe = map->header.next; 580 while (tmpe != &map->header) { |
581 if ((tmpe->eflags & (MAP_ENTRY_IS_A_MAP|MAP_ENTRY_IS_SUB_MAP)) == 0) { | 581 if ((tmpe->eflags & MAP_ENTRY_IS_SUB_MAP) == 0) { |
582 obj = tmpe->object.vm_object; 583 if ((obj != NULL) && (obj->shadow_count <= 1) && 584 ((bigobj == NULL) || 585 (bigobj->resident_page_count < obj->resident_page_count))) { 586 bigobj = obj; 587 } 588 } 589 tmpe = tmpe->next; --- 5 unchanged lines hidden (view full) --- 595 /* 596 * Next, hunt around for other pages to deactivate. We actually 597 * do this search sort of wrong -- .text first is not the best idea. 598 */ 599 tmpe = map->header.next; 600 while (tmpe != &map->header) { 601 if (vm_map_pmap(map)->pm_stats.resident_count <= desired) 602 break; | 582 obj = tmpe->object.vm_object; 583 if ((obj != NULL) && (obj->shadow_count <= 1) && 584 ((bigobj == NULL) || 585 (bigobj->resident_page_count < obj->resident_page_count))) { 586 bigobj = obj; 587 } 588 } 589 tmpe = tmpe->next; --- 5 unchanged lines hidden (view full) --- 595 /* 596 * Next, hunt around for other pages to deactivate. We actually 597 * do this search sort of wrong -- .text first is not the best idea. 598 */ 599 tmpe = map->header.next; 600 while (tmpe != &map->header) { 601 if (vm_map_pmap(map)->pm_stats.resident_count <= desired) 602 break; |
603 if ((tmpe->eflags & (MAP_ENTRY_IS_A_MAP|MAP_ENTRY_IS_SUB_MAP)) == 0) { | 603 if ((tmpe->eflags & MAP_ENTRY_IS_SUB_MAP) == 0) { |
604 obj = tmpe->object.vm_object; 605 if (obj) 606 vm_pageout_object_deactivate_pages(map, obj, desired, 0); 607 } 608 tmpe = tmpe->next; 609 }; 610 611 /* --- 853 unchanged lines hidden --- | 604 obj = tmpe->object.vm_object; 605 if (obj) 606 vm_pageout_object_deactivate_pages(map, obj, desired, 0); 607 } 608 tmpe = tmpe->next; 609 }; 610 611 /* --- 853 unchanged lines hidden --- |