mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-24 12:44:11 +08:00
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>
This commit is contained in:
parent
3fe2011ff5
commit
e9e96b39f9
17
mm/Kconfig
17
mm/Kconfig
@ -171,6 +171,15 @@ config SPLIT_PTLOCK_CPUS
|
||||
default "999999" if DEBUG_SPINLOCK || DEBUG_LOCK_ALLOC
|
||||
default "4"
|
||||
|
||||
#
|
||||
# support for memory compaction
|
||||
config COMPACTION
|
||||
bool "Allow for memory compaction"
|
||||
select MIGRATION
|
||||
depends on EXPERIMENTAL && HUGETLB_PAGE && MMU
|
||||
help
|
||||
Allows the compaction of memory for the allocation of huge pages.
|
||||
|
||||
#
|
||||
# support for page migration
|
||||
#
|
||||
@ -180,9 +189,11 @@ config MIGRATION
|
||||
depends on NUMA || ARCH_ENABLE_MEMORY_HOTREMOVE
|
||||
help
|
||||
Allows the migration of the physical location of pages of processes
|
||||
while the virtual addresses are not changed. This is useful for
|
||||
example on NUMA systems to put pages nearer to the processors accessing
|
||||
the page.
|
||||
while the virtual addresses are not changed. This is useful in
|
||||
two situations. The first is on NUMA systems to put pages nearer
|
||||
to the processors accessing. The second is when allocating huge
|
||||
pages as migration can relocate pages to satisfy a huge page
|
||||
allocation instead of reclaiming.
|
||||
|
||||
config PHYS_ADDR_T_64BIT
|
||||
def_bool 64BIT || ARCH_PHYS_ADDR_T_64BIT
|
||||
|
Loading…
Reference in New Issue
Block a user