diff options
author | Mel Gorman <mgorman@techsingularity.net> | 2015-11-06 19:28:34 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2015-11-06 20:50:42 -0500 |
commit | 974a786e63c96a2401a78ddba926f34c128474f1 (patch) | |
tree | c3551fdc6208bc2f764455cb73ad676a965a17e0 /include/linux/mmzone.h | |
parent | f77cf4e4cc9d40310a7224a1a67c733aeec78836 (diff) |
mm, page_alloc: remove MIGRATE_RESERVE
MIGRATE_RESERVE preserves an old property of the buddy allocator that
existed prior to fragmentation avoidance -- min_free_kbytes worth of pages
tended to remain contiguous until the only alternative was to fail the
allocation. At the time it was discovered that high-order atomic
allocations relied on this property so MIGRATE_RESERVE was introduced. A
later patch will introduce an alternative MIGRATE_HIGHATOMIC so this patch
deletes MIGRATE_RESERVE and supporting code so it'll be easier to review.
Note that this patch in isolation may look like a false regression if
someone was bisecting high-order atomic allocation failures.
Signed-off-by: Mel Gorman <mgorman@techsingularity.net>
Acked-by: Vlastimil Babka <vbabka@suse.cz>
Cc: Christoph Lameter <cl@linux.com>
Cc: David Rientjes <rientjes@google.com>
Cc: Johannes Weiner <hannes@cmpxchg.org>
Cc: Michal Hocko <mhocko@suse.com>
Cc: Vitaly Wool <vitalywool@gmail.com>
Cc: Rik van Riel <riel@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'include/linux/mmzone.h')
-rw-r--r-- | include/linux/mmzone.h | 10 |
1 files changed, 2 insertions, 8 deletions
diff --git a/include/linux/mmzone.h b/include/linux/mmzone.h index 1e88aae329ff..b86cfa3313cf 100644 --- a/include/linux/mmzone.h +++ b/include/linux/mmzone.h | |||
@@ -39,8 +39,6 @@ enum { | |||
39 | MIGRATE_UNMOVABLE, | 39 | MIGRATE_UNMOVABLE, |
40 | MIGRATE_MOVABLE, | 40 | MIGRATE_MOVABLE, |
41 | MIGRATE_RECLAIMABLE, | 41 | MIGRATE_RECLAIMABLE, |
42 | MIGRATE_PCPTYPES, /* the number of types on the pcp lists */ | ||
43 | MIGRATE_RESERVE = MIGRATE_PCPTYPES, | ||
44 | #ifdef CONFIG_CMA | 42 | #ifdef CONFIG_CMA |
45 | /* | 43 | /* |
46 | * MIGRATE_CMA migration type is designed to mimic the way | 44 | * MIGRATE_CMA migration type is designed to mimic the way |
@@ -63,6 +61,8 @@ enum { | |||
63 | MIGRATE_TYPES | 61 | MIGRATE_TYPES |
64 | }; | 62 | }; |
65 | 63 | ||
64 | #define MIGRATE_PCPTYPES (MIGRATE_RECLAIMABLE+1) | ||
65 | |||
66 | #ifdef CONFIG_CMA | 66 | #ifdef CONFIG_CMA |
67 | # define is_migrate_cma(migratetype) unlikely((migratetype) == MIGRATE_CMA) | 67 | # define is_migrate_cma(migratetype) unlikely((migratetype) == MIGRATE_CMA) |
68 | #else | 68 | #else |
@@ -429,12 +429,6 @@ struct zone { | |||
429 | 429 | ||
430 | const char *name; | 430 | const char *name; |
431 | 431 | ||
432 | /* | ||
433 | * Number of MIGRATE_RESERVE page block. To maintain for just | ||
434 | * optimization. Protected by zone->lock. | ||
435 | */ | ||
436 | int nr_migrate_reserve_block; | ||
437 | |||
438 | #ifdef CONFIG_MEMORY_ISOLATION | 432 | #ifdef CONFIG_MEMORY_ISOLATION |
439 | /* | 433 | /* |
440 | * Number of isolated pageblock. It is used to solve incorrect | 434 | * Number of isolated pageblock. It is used to solve incorrect |