Hi Andrew > > on X86, ZONE_DMA is very very small. > > It is often no used at all. > > In that case page-reclaim is supposed to set all_unreclaimable and > basically ignores the zone altogether until it looks like something might > have changed. > > Is that code not working? (quite possible).
please insert blow debug printk and dd if=bigfile of=/dev/null. you see "near_oom(DMA) 0 0 0" messages :) at least, I can reproduce it on my machine. my machine CPU: x86_64 1.86GHz x2 memory: 6G - kosaki Index: b/mm/vmscan.c =================================================================== --- a/mm/vmscan.c 2008-01-18 14:49:06.000000000 +0900 +++ b/mm/vmscan.c 2008-01-18 14:50:21.000000000 +0900 @@ -966,8 +966,14 @@ static int calc_reclaim_mapped(struct sc int reclaim_mapped = 0; int prev_priority; - if (scan_global_lru(sc) && zone_is_near_oom(zone)) + if (scan_global_lru(sc) && zone_is_near_oom(zone)) { + printk("near_oom(%s) %ld %ld %ld\n", + zone->name, + zone->pages_scanned, + zone_page_state(zone, NR_ACTIVE), + zone_page_state(zone, NR_INACTIVE)); return 1; + } /* * `distress' is a measure of how much trouble we're having * reclaiming pages. 0 -> no problems. 100 -> great trouble. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/