Changeset View
Changeset View
Standalone View
Standalone View
head/sys/vm/vm_pageout.c
Show First 20 Lines • Show All 1,387 Lines • ▼ Show 20 Lines | drop_page: | ||||
* utility when attempting to quickly alleviate a shortage. However, | * utility when attempting to quickly alleviate a shortage. However, | ||||
* this weighting also causes the scan to deactivate dirty pages more | * this weighting also causes the scan to deactivate dirty pages more | ||||
* more aggressively, improving the effectiveness of clustering and | * more aggressively, improving the effectiveness of clustering and | ||||
* ensuring that they can eventually be reused. | * ensuring that they can eventually be reused. | ||||
*/ | */ | ||||
inactq_shortage = vm_cnt.v_inactive_target - (vm_cnt.v_inactive_count + | inactq_shortage = vm_cnt.v_inactive_target - (vm_cnt.v_inactive_count + | ||||
vm_cnt.v_laundry_count / act_scan_laundry_weight) + | vm_cnt.v_laundry_count / act_scan_laundry_weight) + | ||||
vm_paging_target() + deficit + addl_page_shortage; | vm_paging_target() + deficit + addl_page_shortage; | ||||
page_shortage *= act_scan_laundry_weight; | inactq_shortage *= act_scan_laundry_weight; | ||||
pq = &vmd->vmd_pagequeues[PQ_ACTIVE]; | pq = &vmd->vmd_pagequeues[PQ_ACTIVE]; | ||||
vm_pagequeue_lock(pq); | vm_pagequeue_lock(pq); | ||||
maxscan = pq->pq_cnt; | maxscan = pq->pq_cnt; | ||||
/* | /* | ||||
* If we're just idle polling attempt to visit every | * If we're just idle polling attempt to visit every | ||||
* active page within 'update_period' seconds. | * active page within 'update_period' seconds. | ||||
▲ Show 20 Lines • Show All 545 Lines • Show Last 20 Lines |