On Tue, Dec 09, 2014 at 12:09:40PM +0900, Minchan Kim wrote: > On Thu, Dec 04, 2014 at 06:12:57PM +0100, Vlastimil Babka wrote: > > When allocation falls back to stealing free pages of another migratetype, > > it can decide to steal extra pages, or even the whole pageblock in order to > > reduce fragmentation, which could happen if further allocation fallbacks > > pick a different pageblock. In try_to_steal_freepages(), one of the situations > > where extra pages are stolen happens when we are trying to allocate a > > MIGRATE_RECLAIMABLE page. > > > > However, MIGRATE_UNMOVABLE allocations are not treated the same way, although > > spreading such allocation over multiple fallback pageblocks is arguably even > > worse than it is for RECLAIMABLE allocations. To minimize fragmentation, we > > should minimize the number of such fallbacks, and thus steal as much as is > > possible from each fallback pageblock. > > Fair enough. > Just to be absolutly sure, check that data and see what the number of MIGRATE_UNMOVABLE blocks looks like over time. Make sure it's not just continually growing. MIGRATE_RECLAIMABLE and MIGRATE_MOVABLE blocks were expected to be freed if the system was aggressively reclaimed but the same is not be true of MIGRATE_UNMOVABLE. Even if all processes are aggressively reclaimed for example, the page tables are still there. -- 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>