diff options
Diffstat (limited to 'mm/Kconfig')
-rw-r--r-- | mm/Kconfig | 67 |
1 files changed, 62 insertions, 5 deletions
@@ -131,9 +131,6 @@ config SPARSEMEM_VMEMMAP config HAVE_MEMBLOCK boolean -config NO_BOOTMEM - boolean - # eventually, we can have this option just 'select SPARSEMEM' config MEMORY_HOTPLUG bool "Allow for memory hot-add" @@ -192,7 +189,7 @@ config COMPACTION config MIGRATION bool "Page migration" def_bool y - depends on NUMA || ARCH_ENABLE_MEMORY_HOTREMOVE || COMPACTION + depends on NUMA || ARCH_ENABLE_MEMORY_HOTREMOVE || COMPACTION || DMA_CMA help Allows the migration of the physical location of pages of processes while the virtual addresses are not changed. This is useful in @@ -359,7 +356,7 @@ config CLEANCACHE for clean pages that the kernel's pageframe replacement algorithm (PFRA) would like to keep around, but can't since there isn't enough memory. So when the PFRA "evicts" a page, it first attempts to use - cleancache code to put the data contained in that page into + cleancacne code to put the data contained in that page into "transcendent memory", memory that is not directly accessible or addressable by the kernel and is of unknown and possibly time-varying size. And when a cleancache-enabled @@ -373,3 +370,63 @@ config CLEANCACHE in a negligible performance hit. If unsure, say Y to enable cleancache + +config CMA + bool "Contiguous Memory Allocator framework" + # Currently there is only one allocator so force it on + select CMA_BEST_FIT + help + This enables the Contiguous Memory Allocator framework which + allows drivers to allocate big physically-contiguous blocks of + memory for use with hardware components that do not support I/O + map nor scatter-gather. + + If you select this option you will also have to select at least + one allocator algorithm below. + + To make use of CMA you need to specify the regions and + driver->region mapping on command line when booting the kernel. + +config CMA_DEVELOPEMENT + bool "Include CMA developement features" + depends on CMA + help + This lets you enable some developement features of the CMA + freamework. + +config CMA_DEBUG + bool "CMA debug messages" + depends on CMA_DEVELOPEMENT + help + Enable debug messages in CMA code. + +config CMA_SYSFS + bool "CMA SysFS interface support" + depends on CMA_DEVELOPEMENT + help + Enable support for SysFS interface. + +config CMA_CMDLINE + bool "CMA command line parameters support" + depends on CMA_DEVELOPEMENT + help + Enable support for cma, cma.map and cma.asterisk command line + parameters. + +config CMA_BEST_FIT + bool "CMA best-fit allocator" + depends on CMA + help + This is a best-fit algorithm running in O(n log n) time where + n is the number of existing holes (which is never greater then + the number of allocated regions and usually much smaller). It + allocates area from the smallest hole that is big enough for + allocation in question. + +config DEBUG_VMALLOC + bool "Enable VMALLOC debugging support" + help + This enables the inclusion of a few debugging parameters, which + are the PID and the name of the task requesting vmalloc. + + Disabling these can result in savings in code size. |