On Fri, 15 Jul 2011, Mel Gorman wrote: > Currently the zonelist cache is setup only after the first zone has > been considered and zone_reclaim() has been called. The objective was > to avoid a costly setup but zone_reclaim is itself quite expensive. If > it is failing regularly such as the first eligible zone having mostly > mapped pages, the cost in scanning and allocation stalls is far higher > than the ZLC initialisation step. Would it not be easier to set zlc_active and allowednodes based on the zone having an active ZLC at the start of get_pages()? Buffered_rmqueue is handling the situation of a zone with an ZLC in a weird way right now since it ignores the (potentially existing) ZLC for the first pass. zlc_setup() does a lot of things. So that is because there is a performance benefit? -- 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>