try harder before declaring oom. Signed-off-by: Andrew Morton --- 25-akpm/mm/vmscan.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff -puN mm/vmscan.c~vmscan-more-scanning mm/vmscan.c --- 25/mm/vmscan.c~vmscan-more-scanning 2004-11-16 19:47:27.861551016 -0800 +++ 25-akpm/mm/vmscan.c 2004-11-16 19:47:27.865550408 -0800 @@ -918,11 +918,11 @@ int try_to_free_pages(struct zone **zone lru_pages += zone->nr_active + zone->nr_inactive; } - for (priority = DEF_PRIORITY; priority >= 0; priority--) { + for (priority = DEF_PRIORITY; priority >= -1; priority--) { sc.nr_mapped = read_page_state(nr_mapped); sc.nr_scanned = 0; sc.nr_reclaimed = 0; - sc.priority = priority; + sc.priority = (priority < 0) ? 0 : priority; shrink_caches(zones, &sc); shrink_slab(sc.nr_scanned, gfp_mask, lru_pages); if (reclaim_state) { _