|
@@ -171,6 +171,15 @@ config SPLIT_PTLOCK_CPUS
|
|
default "999999" if DEBUG_SPINLOCK || DEBUG_LOCK_ALLOC
|
|
default "999999" if DEBUG_SPINLOCK || DEBUG_LOCK_ALLOC
|
|
default "4"
|
|
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
|
|
# support for page migration
|
|
#
|
|
#
|
|
@@ -180,9 +189,11 @@ config MIGRATION
|
|
depends on NUMA || ARCH_ENABLE_MEMORY_HOTREMOVE
|
|
depends on NUMA || ARCH_ENABLE_MEMORY_HOTREMOVE
|
|
help
|
|
help
|
|
Allows the migration of the physical location of pages of processes
|
|
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
|
|
config PHYS_ADDR_T_64BIT
|
|
def_bool 64BIT || ARCH_PHYS_ADDR_T_64BIT
|
|
def_bool 64BIT || ARCH_PHYS_ADDR_T_64BIT
|