On 08/10/2011 06:47 AM, Mel Gorman wrote:
It is preferable that no dirty pages are dispatched for cleaning from the page reclaim path. At normal priorities, this patch prevents kswapd writing pages. However, page reclaim does have a requirement that pages be freed in a particular zone. If it is failing to make sufficient progress (reclaiming< SWAP_CLUSTER_MAX at any priority priority), the priority is raised to scan more pages. A priority of DEF_PRIORITY - 3 is considered to be the point where kswapd is getting into trouble reclaiming pages. If this priority is reached, kswapd will dispatch pages for writing. Signed-off-by: Mel Gorman<mgorman@xxxxxxx> Reviewed-by: Minchan Kim<minchan.kim@xxxxxxxxx>
My only worry with this patch is that maybe we'll burn too much CPU time freeing pages from a zone. However, chances are we'll have freed pages from other zones when scanning one zone multiple times (the page cache dirty limit is global, the clean pages have to be _somewhere_). Since the bulk of the allocators are not too picky about which zone they get their pages from, I suspect this patch will be an overall improvement pretty much all the time. Acked-by: Rik van Riel <riel@xxxxxxxxxx> -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/ Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>