patch-2.3.99-pre4 linux/mm/vmscan.c
Next file: linux/net/Config.in
Previous file: linux/mm/swapfile.c
Back to the patch index
Back to the overall index
- Lines: 32
- Date:
Sun Mar 26 22:00:36 2000
- Orig file:
v2.3.99-pre3/linux/mm/vmscan.c
- Orig date:
Mon Mar 27 08:08:33 2000
diff -u --recursive --new-file v2.3.99-pre3/linux/mm/vmscan.c linux/mm/vmscan.c
@@ -499,19 +499,19 @@
* the processes needing more memory will wake us
* up on a more timely basis.
*/
- do {
- pgdat = pgdat_list;
- while (pgdat) {
- for (i = 0; i < MAX_NR_ZONES; i++) {
- zone = pgdat->node_zones + i;
- if ((!zone->size) || (!zone->zone_wake_kswapd))
- continue;
- do_try_to_free_pages(GFP_KSWAPD, zone);
- }
- pgdat = pgdat->node_next;
+ pgdat = pgdat_list;
+ while (pgdat) {
+ for (i = 0; i < MAX_NR_ZONES; i++) {
+ zone = pgdat->node_zones + i;
+ if (tsk->need_resched)
+ schedule();
+ if ((!zone->size) || (!zone->zone_wake_kswapd))
+ continue;
+ do_try_to_free_pages(GFP_KSWAPD, zone);
}
- run_task_queue(&tq_disk);
- } while (!tsk->need_resched);
+ pgdat = pgdat->node_next;
+ }
+ run_task_queue(&tq_disk);
tsk->state = TASK_INTERRUPTIBLE;
interruptible_sleep_on(&kswapd_wait);
}
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)