Split the free lists for movable and unmovable allocations

This patch adds the core of the fragmentation reduction strategy.  It works by
grouping pages together based on their ability to migrate or be reclaimed.
Basically, it works by breaking the list in zone->free_area list into
MIGRATE_TYPES number of lists.

Signed-off-by: Mel Gorman <mel@csn.ul.ie>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
Mel Gorman
2007-10-16 01:25:48 -07:00
committed by Linus Torvalds
parent 835c134ec4
commit b2a0ac8875
3 changed files with 127 additions and 25 deletions

View File

@@ -31,6 +31,7 @@
/* Bit indices that affect a whole block of pages */
enum pageblock_bits {
PB_range(PB_migrate, 1), /* 1 bit required for migrate types */
NR_PAGEBLOCK_BITS
};