Index: linux-2.6.18-mm3/mm/vmscan.c =================================================================== --- linux-2.6.18-mm3.orig/mm/vmscan.c 2006-10-03 07:48:53.000000000 -0500 +++ linux-2.6.18-mm3/mm/vmscan.c 2006-10-03 07:50:22.093848923 -0500 @@ -975,7 +975,7 @@ static unsigned long shrink_zones(int pr if (zone->prev_priority > priority) zone->prev_priority = priority; - if (zone->all_unreclaimable && priority != DEF_PRIORITY) + if (zone->all_unreclaimable) continue; /* Let kswapd poll it */ sc->all_unreclaimable = 0; @@ -1144,7 +1144,7 @@ loop_again: if (!populated_zone(zone)) continue; - if (zone->all_unreclaimable && priority != DEF_PRIORITY) + if (zone->all_unreclaimable) continue; if (!zone_watermark_ok(zone, order, zone->pages_high, @@ -1177,7 +1177,7 @@ scan: if (!populated_zone(zone)) continue; - if (zone->all_unreclaimable && priority != DEF_PRIORITY) + if (zone->all_unreclaimable) continue; if (!zone_watermark_ok(zone, order, zone->pages_high, @@ -1349,7 +1349,7 @@ static unsigned long shrink_all_zones(un if (!populated_zone(zone)) continue; - if (zone->all_unreclaimable && prio != DEF_PRIORITY) + if (zone->all_unreclaimable) continue; /* For pass = 0 we don't shrink the active list */