1e1785e85SDave Hansenconfig SELECT_MEMORY_MODEL 2e1785e85SDave Hansen def_bool y 3e1785e85SDave Hansen depends on EXPERIMENTAL || ARCH_SELECT_MEMORY_MODEL 4e1785e85SDave Hansen 53a9da765SDave Hansenchoice 63a9da765SDave Hansen prompt "Memory model" 7e1785e85SDave Hansen depends on SELECT_MEMORY_MODEL 8e1785e85SDave Hansen default DISCONTIGMEM_MANUAL if ARCH_DISCONTIGMEM_DEFAULT 9e1785e85SDave Hansen default FLATMEM_MANUAL 103a9da765SDave Hansen 11e1785e85SDave Hansenconfig FLATMEM_MANUAL 123a9da765SDave Hansen bool "Flat Memory" 133a9da765SDave Hansen depends on !ARCH_DISCONTIGMEM_ENABLE || ARCH_FLATMEM_ENABLE 143a9da765SDave Hansen help 153a9da765SDave Hansen This option allows you to change some of the ways that 163a9da765SDave Hansen Linux manages its memory internally. Most users will 173a9da765SDave Hansen only have one option here: FLATMEM. This is normal 183a9da765SDave Hansen and a correct option. 193a9da765SDave Hansen 203a9da765SDave Hansen If unsure, choose this option over any other. 213a9da765SDave Hansen 22e1785e85SDave Hansenconfig DISCONTIGMEM_MANUAL 233a9da765SDave Hansen bool "Discontigious Memory" 243a9da765SDave Hansen depends on ARCH_DISCONTIGMEM_ENABLE 253a9da765SDave Hansen help 26785dcd44SDave Hansen This option provides enhanced support for discontiguous 27785dcd44SDave Hansen memory systems, over FLATMEM. These systems have holes 28785dcd44SDave Hansen in their physical address spaces, and this option provides 29785dcd44SDave Hansen more efficient handling of these holes. However, the vast 30785dcd44SDave Hansen majority of hardware has quite flat address spaces, and 31785dcd44SDave Hansen can have degraded performance from extra overhead that 32785dcd44SDave Hansen this option imposes. 33785dcd44SDave Hansen 34785dcd44SDave Hansen Many NUMA configurations will have this as the only option. 35785dcd44SDave Hansen 363a9da765SDave Hansen If unsure, choose "Flat Memory" over this option. 373a9da765SDave Hansen 383a9da765SDave Hansenendchoice 393a9da765SDave Hansen 40e1785e85SDave Hansenconfig DISCONTIGMEM 41e1785e85SDave Hansen def_bool y 42e1785e85SDave Hansen depends on (!SELECT_MEMORY_MODEL && ARCH_DISCONTIGMEM_ENABLE) || DISCONTIGMEM_MANUAL 43e1785e85SDave Hansen 44e1785e85SDave Hansenconfig FLATMEM 45e1785e85SDave Hansen def_bool y 46e1785e85SDave Hansen depends on !DISCONTIGMEM || FLATMEM_MANUAL 47e1785e85SDave Hansen 4893b7504eSDave Hansen# 4993b7504eSDave Hansen# Both the NUMA code and DISCONTIGMEM use arrays of pg_data_t's 5093b7504eSDave Hansen# to represent different areas of memory. This variable allows 5193b7504eSDave Hansen# those dependencies to exist individually. 5293b7504eSDave Hansen# 5393b7504eSDave Hansenconfig NEED_MULTIPLE_NODES 5493b7504eSDave Hansen def_bool y 5593b7504eSDave Hansen depends on DISCONTIGMEM || NUMA 56*af705362SAndy Whitcroft 57*af705362SAndy Whitcroftconfig HAVE_MEMORY_PRESENT 58*af705362SAndy Whitcroft def_bool y 59*af705362SAndy Whitcroft depends on ARCH_HAVE_MEMORY_PRESENT 60