On Thu, Mar 03, 2016 at 02:46:14PM +0100, Vlastimil Babka wrote: > On 02/23/2016 04:04 PM, Mel Gorman wrote: > > -static bool zone_balanced(struct zone *zone, int order, bool highorder, > > +static bool zone_balanced(struct zone *zone, int order, > > unsigned long balance_gap, int classzone_idx) > > { > > unsigned long mark = high_wmark_pages(zone) + balance_gap; > > > > - /* > > - * When checking from pgdat_balanced(), kswapd should stop and sleep > > - * when it reaches the high order-0 watermark and let kcompactd take > > - * over. Other callers such as wakeup_kswapd() want to determine the > > - * true high-order watermark. > > - */ > > - if (IS_ENABLED(CONFIG_COMPACTION) && !highorder) { > > - mark += (1UL << order); > > - order = 0; > > - } > > - > > return zone_watermark_ok_safe(zone, order, mark, classzone_idx); > > Did you really intend to remove this or was it due to rebasing on top of > kcompactd? It was intentional because kswapd_shrink_node() sets sc.order to 0 when pages have been reclaimed. There is no guarantee it'll be enough to actually compact but it's conservative in terms of reclaim. The end result should be that this check is no longer necessary. -- Mel Gorman SUSE Labs -- 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/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>