aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMel Gorman <mel@csn.ul.ie>2010-05-24 17:32:21 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2010-05-25 11:06:59 -0400
commite9e96b39f932a065e14f5d5bab0797ae261d03b5 (patch)
tree1164a4bf40c34715944b47da035ba823f1d8b60a
parent3fe2011ff51e92500010a495df4be86745fbbda9 (diff)
mm: allow CONFIG_MIGRATION to be set without CONFIG_NUMA or memory hot-remove
CONFIG_MIGRATION currently depends on CONFIG_NUMA or on the architecture being able to hot-remove memory. The main users of page migration such as sys_move_pages(), sys_migrate_pages() and cpuset process migration are only beneficial on NUMA so it makes sense. As memory compaction will operate within a zone and is useful on both NUMA and non-NUMA systems, this patch allows CONFIG_MIGRATION to be set if the user selects CONFIG_COMPACTION as an option. [akpm@linux-foundation.org: Depend on CONFIG_HUGETLB_PAGE] Signed-off-by: Mel Gorman <mel@csn.ul.ie> Reviewed-by: Christoph Lameter <cl@linux-foundation.org> Reviewed-by: Rik van Riel <riel@redhat.com> Reviewed-by: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com> Cc: Minchan Kim <minchan.kim@gmail.com> Cc: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
-rw-r--r--mm/Kconfig17
1 files changed, 14 insertions, 3 deletions
diff --git a/mm/Kconfig b/mm/Kconfig
index 9c61158308dc..527136b22384 100644
--- a/mm/Kconfig
+++ b/mm/Kconfig
@@ -172,6 +172,15 @@ config SPLIT_PTLOCK_CPUS
172 default "4" 172 default "4"
173 173
174# 174#
175# support for memory compaction
176config COMPACTION
177 bool "Allow for memory compaction"
178 select MIGRATION
179 depends on EXPERIMENTAL && HUGETLB_PAGE && MMU
180 help
181 Allows the compaction of memory for the allocation of huge pages.
182
183#
175# support for page migration 184# support for page migration
176# 185#
177config MIGRATION 186config MIGRATION
@@ -180,9 +189,11 @@ config MIGRATION
180 depends on NUMA || ARCH_ENABLE_MEMORY_HOTREMOVE 189 depends on NUMA || ARCH_ENABLE_MEMORY_HOTREMOVE
181 help 190 help
182 Allows the migration of the physical location of pages of processes 191 Allows the migration of the physical location of pages of processes
183 while the virtual addresses are not changed. This is useful for 192 while the virtual addresses are not changed. This is useful in
184 example on NUMA systems to put pages nearer to the processors accessing 193 two situations. The first is on NUMA systems to put pages nearer
185 the page. 194 to the processors accessing. The second is when allocating huge
195 pages as migration can relocate pages to satisfy a huge page
196 allocation instead of reclaiming.
186 197
187config PHYS_ADDR_T_64BIT 198config PHYS_ADDR_T_64BIT
188 def_bool 64BIT || ARCH_PHYS_ADDR_T_64BIT 199 def_bool 64BIT || ARCH_PHYS_ADDR_T_64BIT