On Mon, Mar 18, 2013 at 07:11:30PM +0800, Wanpeng Li wrote: > >@@ -2864,46 +2879,21 @@ static unsigned long balance_pgdat(pg_data_t *pgdat, int order, > > if (try_to_freeze() || kthread_should_stop()) > > break; > > > >- /* If no reclaim progress then increase scanning priority */ > >- if (sc.nr_reclaimed - nr_reclaimed == 0) > >- raise_priority = true; > >+ /* Compact if necessary and kswapd is reclaiming efficiently */ > >+ this_reclaimed = sc.nr_reclaimed - nr_reclaimed; > >+ if (order && pgdat_needs_compaction && > >+ this_reclaimed > nr_to_reclaim) > >+ compact_pgdat(pgdat, order); > > > > Hi Mel, > > If you should check compaction_suitable here to confirm it's not because > other reasons like large number of pages under writeback to avoid blind > compaction. :-) > This starts as a question but it is not a question so I am not sure how I should respond. Checking compaction_suitable here is unnecessary because compact_pgdat() makes the same check when it calls compact_zone(). -- 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>