On Sun, Jun 22, 2014 at 04:51:00PM +0800, Chen Yucong wrote: > According to the commit messages of "mm: vmscan: fix endless loop in kswapd > balancing" > and "mm: vmscan: decide whether to compact the pgdat based on reclaim > progress", minor > change is required to the following snippet. > > /* > * If any zone is currently balanced then kswapd will > * not call compaction as it is expected that the > * necessary pages are already available. > */ > if (pgdat_needs_compaction && > zone_watermark_ok(zone, order, > low_wmark_pages(zone), > *classzone_idx, 0)) > pgdat_needs_compaction = false; > > zone_watermark_ok() should be replaced by zone_balanced() in the above > snippet. That's > because zone_balanced() is more suitable for the context. >
What bug does this fix? The intent here is to prevent kswapd compacting a node if an allocation request within that node would succeed against the low watermark. Your change alters that to check against hte high watermark + balance gap without explaining why kswapd should compact until the high watermark is reached. -- Mel Gorman SUSE Labs -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/