Hi Daniel > > Thank you for good point out! > > Could you please post your test program and reproduced method? > > Sure: > > 1. Fill almost all available memory with page cache in a system without swap. > 2. Run attached alloc-test program. > 3. Notification fires when page cache is reclaimed.
Unfortunately, I can't reproduce it. my machine CPU: Pentium4 2.8GHz with HT memory: 512M 1. I doubt ZONE_DMA, please shipment ignore zone_dma patch(below). 2. Could you please send your .config and /etc/sysctl.conf? I hope more reproduce challenge. thanks. - kosaki Signed-off-by: KOSAKI Motohiro <[EMAIL PROTECTED]> --- include/linux/mem_notify.h | 3 +++ mm/page_alloc.c | 6 +++++- 2 files changed, 8 insertions(+), 1 deletion(-) Index: linux-2.6.24-rc6-mm1-memnotify/include/linux/mem_notify.h =================================================================== --- linux-2.6.24-rc6-mm1-memnotify.orig/include/linux/mem_notify.h 2008-01-16 21:31:09.000000000 +0900 +++ linux-2.6.24-rc6-mm1-memnotify/include/linux/mem_notify.h 2008-01-16 21:34:24.000000000 +0900 @@ -22,6 +22,9 @@ static inline void memory_pressure_notif unsigned long target; unsigned long pages_high, pages_free, pages_reserve; + if (unlikely(zone->mem_notify_status == -1)) + return; + if (pressure) { target = atomic_long_read(&last_mem_notify) + MEM_NOTIFY_FREQ; if (likely(time_before(jiffies, target))) Index: linux-2.6.24-rc6-mm1-memnotify/mm/page_alloc.c =================================================================== --- linux-2.6.24-rc6-mm1-memnotify.orig/mm/page_alloc.c 2008-01-13 19:50:27.000000000 +0900 +++ linux-2.6.24-rc6-mm1-memnotify/mm/page_alloc.c 2008-01-16 21:41:58.000000000 +0900 @@ -3467,7 +3467,11 @@ static void __meminit free_area_init_cor zone->zone_pgdat = pgdat; zone->prev_priority = DEF_PRIORITY; - zone->mem_notify_status = 0; + + if (zone->present_pages < (pgdat->node_present_pages / 10)) + zone->mem_notify_status = -1; + else + zone->mem_notify_status = 0; zone_pcp_init(zone); INIT_LIST_HEAD(&zone->active_list); -- 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/