Messages in this thread | | | Date | Wed, 4 Jun 2014 12:04:11 +0100 | From | Mel Gorman <> | Subject | Re: [patch -mm 3/3] mm, compaction: avoid compacting memory for thp if pageblock cannot become free |
| |
On Tue, Jun 03, 2014 at 05:30:01PM -0700, David Rientjes wrote: > It's pointless to migrate pages within a pageblock if the entire pageblock will > not become free for a thp allocation. > > If we encounter a page that cannot be migrated and a direct compactor other than > khugepaged is trying to allocate a hugepage for thp, then skip the entire > pageblock and avoid migrating pages needlessly. >
It's not completely pointless. A movable page may be placed within an unmovable pageblock due to insufficient free memory or a pageblock changed type. When this happens then partial migration moves the movable page of out of the unmovable block. Future unmovable allocations can then be placed with other unmovable pages instead of falling back to other blocks and degrading fragmentation over time.
-- Mel Gorman SUSE Labs
| |