Lines Matching +full:default +full:- +full:on
1 # SPDX-License-Identifier: GPL-2.0-only
14 depends on MMU && BLOCK && !ARCH_NO_SWAP
15 default y
24 depends on SWAP
30 compress them into a dynamically allocated RAM-based memory pool.
31 This can result in a significant I/O reduction on swap device and,
36 bool "Enable the compressed cache for swap pages by default"
37 depends on ZSWAP
46 bool "Shrink the zswap pool on memory pressure"
47 depends on ZSWAP
48 default n
52 written back to the backing swap device) on memory pressure.
60 prompt "Default compressor"
61 depends on ZSWAP
62 default ZSWAP_COMPRESSOR_DEFAULT_LZO
64 Selects the default compression algorithm for the compressed cache
81 Use the Deflate algorithm as the default compression algorithm.
87 Use the LZO algorithm as the default compression algorithm.
93 Use the 842 algorithm as the default compression algorithm.
99 Use the LZ4 algorithm as the default compression algorithm.
105 Use the LZ4HC algorithm as the default compression algorithm.
111 Use the zstd algorithm as the default compression algorithm.
116 depends on ZSWAP
117 default "deflate" if ZSWAP_COMPRESSOR_DEFAULT_DEFLATE
118 default "lzo" if ZSWAP_COMPRESSOR_DEFAULT_LZO
119 default "842" if ZSWAP_COMPRESSOR_DEFAULT_842
120 default "lz4" if ZSWAP_COMPRESSOR_DEFAULT_LZ4
121 default "lz4hc" if ZSWAP_COMPRESSOR_DEFAULT_LZ4HC
122 default "zstd" if ZSWAP_COMPRESSOR_DEFAULT_ZSTD
123 default ""
131 depends on ZSMALLOC
145 int "Maximum number of physical pages per-zspage"
146 default 8
149 This option sets the upper limit on the number of physical pages
174 depends on !SLUB_TINY && !TINY_RCU
178 depends on EXPERT && !COMPILE_TEST
191 default y
200 merging at runtime, "slab_nomerge" can be passed on the kernel
205 depends on !SLUB_TINY
207 Randomizes the freelist order used on creating new pages. This
213 depends on !SLUB_TINY
222 depends on !SLUB_TINY
223 default SLAB_FREELIST_HARDENED
225 Kernel heap attacks frequently depend on being able to create
226 specifically-sized allocations with user-controlled contents
230 user-controlled allocations. This may very slightly increase
232 of extra pages since the bulk of user-controlled allocations
233 are relatively long-lived.
238 default n
240 depends on SYSFS && !SLUB_TINY
248 Try running: slabinfo -DA
251 default y
252 depends on SMP && !SLUB_TINY
257 in the latency of the free. On overflow these caches will be cleared
262 default n
263 depends on !SLUB_TINY
268 on code address, which makes the attackers more difficult to spray
269 vulnerable memory objects on the heap for the purpose of exploiting
282 default SLAB_FREELIST_RANDOM && ACPI_NUMA
285 utilization of a direct-mapped memory-side-cache. See section
288 the presence of a memory-side-cache. There are also incidental
291 default granularity of shuffling on the MAX_PAGE_ORDER i.e, 10th
292 order of pages is selected based on cache utilization benefits
293 on x86.
296 negatively impact workloads on platforms without a cache. For
297 this reason, by default, the randomization is not enabled even
305 default y
309 This option changes the bootup default to heap randomization
313 On non-ancient distros (post-2000 ones) N is usually a safe choice.
317 depends on EXPERT && !MMU
318 default n
328 ELF-FDPIC binfmt's brk and stack allocator.
331 enabled on embedded devices where you control what is run in
332 userspace. Since that isn't generally a problem on no-MMU systems,
335 See Documentation/admin-guide/mm/nommu-mmap.rst for more information.
339 depends on ARCH_SELECT_MEMORY_MODEL
343 depends on SELECT_MEMORY_MODEL
344 default SPARSEMEM_MANUAL if ARCH_SPARSEMEM_DEFAULT
345 default FLATMEM_MANUAL
354 depends on !ARCH_SPARSEMEM_ENABLE || ARCH_FLATMEM_ENABLE
356 This option is best suited for non-NUMA systems with
369 depends on ARCH_SPARSEMEM_ENABLE
372 memory hot-plug systems. This is normal.
376 hot-plug and hot-remove.
384 depends on (!SELECT_MEMORY_MODEL && ARCH_SPARSEMEM_ENABLE) || SPARSEMEM_MANUAL
388 depends on !SPARSEMEM || FLATMEM_MANUAL
391 # SPARSEMEM_EXTREME (which is the default) does some bootmem
393 # be done on your architecture, select this option. However,
410 depends on SPARSEMEM && !SPARSEMEM_STATIC
417 depends on SPARSEMEM && SPARSEMEM_VMEMMAP_ENABLE
442 depends on MMU
455 # Keep arch NUMA mapping infrastructure post-init.
467 depends on !DEVMEM || STRICT_DEVMEM
470 # Only be set on architectures that have completely implemented memory hotplug
486 depends on SPARSEMEM
487 depends on ARCH_ENABLE_MEMORY_HOTPLUG
488 depends on 64BIT
494 prompt "Memory Hotplug Default Online Type"
495 default MHP_DEFAULT_ONLINE_TYPE_OFFLINE
497 Default memory type for hotplugged memory.
499 This option sets the default policy setting for memory hotplug
504 The default is 'offline'.
513 See Documentation/admin-guide/mm/memory-hotplug.rst for more information.
518 Hotplugged memory will not be onlined by default.
546 sufficient kernel-capable memory (ZONE_NORMAL) must be
554 depends on MEMORY_HOTPLUG && ARCH_ENABLE_MEMORY_HOTREMOVE
555 depends on MIGRATION
559 depends on MEMORY_HOTPLUG && SPARSEMEM_VMEMMAP
560 depends on ARCH_MHP_MEMMAP_ON_MEMORY_ENABLE
567 # Heavily threaded applications may benefit from splitting the mm-wide
568 # page_table_lock, so that faults on different parts of the user address
570 # Default to 4 for wider testing, though 8 might be more appropriate.
571 # ARM's adjust_pte (unused if VIPT) depends on mm-wide page_table_lock.
572 # PA-RISC 7xxx's spinlock_t would enlarge struct page from 32 to 44 bytes.
574 # a per-page lock leads to problems when multiple tables need to be locked
580 depends on MMU
581 depends on SMP
582 depends on NR_CPUS >= 4
583 depends on !ARM || CPU_CACHE_VIPT
584 depends on !PARISC || PA20
585 depends on !SPARC32
592 depends on SPLIT_PTE_PTLOCKS && ARCH_ENABLE_SPLIT_PMD_PTLOCK
603 default y
604 depends on COMPACTION && MEMORY_BALLOON
618 default y
620 depends on MMU
624 reliably. The page allocator relies on compaction heavily and
629 linux-mm@kvack.org.
633 depends on COMPACTION
634 default 0 if PREEMPT_RT
635 default 1
652 default y
653 depends on (NUMA || ARCH_ENABLE_MEMORY_HOTREMOVE || COMPACTION || CMA) && MMU
657 two situations. The first is on NUMA systems to put pages nearer
676 on a platform.
685 int "Maximum scale factor of PCP (Per-CPU pageset) batch allocate/free"
686 default 5
689 In page allocator, PCP (Per-CPU pageset) is refilled and drained in
704 depends on MMU
719 depends on MMU
720 default 4096
728 On arm and other archs it should not be higher than 32768.
740 depends on MMU
741 depends on ARCH_SUPPORTS_MEMORY_FAILURE
745 Enables code to recover from some memory failures on systems
752 depends on MEMORY_FAILURE && DEBUG_KERNEL && PROC_FS
756 int "Turn on mmap() excess space trimming before booting"
757 depends on !MMU
758 default 1
761 of memory on which to store mappings, but it can only ask the system
762 allocator for chunks in 2^N*PAGE_SIZE amounts - which is frequently
771 long-term mappings means that the space is wasted.
778 This option specifies the initial value of this option. The default
781 See Documentation/admin-guide/mm/nommu-mmap.rst for more information.
791 depends on TRANSPARENT_HUGEPAGE
810 depends on HAVE_ARCH_TRANSPARENT_HUGEPAGE && !PREEMPT_RT
822 If memory constrained on embedded, you may want to say N.
828 depends on TRANSPARENT_HUGEPAGE
829 default TRANSPARENT_HUGEPAGE_ALWAYS
852 Disable Transparent Hugepage by default. It can still be
858 depends on TRANSPARENT_HUGEPAGE
859 default TRANSPARENT_HUGEPAGE_SHMEM_HUGE_NEVER
870 Disable hugepage allocation for shmem mount by default. It can
904 depends on TRANSPARENT_HUGEPAGE
905 default TRANSPARENT_HUGEPAGE_TMPFS_HUGE_NEVER
916 Disable hugepage allocation for tmpfs mount by default. It can
949 depends on TRANSPARENT_HUGEPAGE && ARCH_WANTS_THP_SWAP && SWAP && 64BIT
958 bool "Read-only THP for filesystems (EXPERIMENTAL)"
959 depends on TRANSPARENT_HUGEPAGE
962 Allow khugepaged to put read-only file-backed pages in THP.
969 bool "No per-page mapcount (EXPERIMENTAL)"
971 Do not maintain per-page mapcounts for pages part of larger
974 When this config option is enabled, some interfaces that relied on
975 this information will rely on less-precise per-allocation information
976 instead: for example, using the average per-page mapcount in such
977 a large allocation instead of the per-page mapcount.
1006 depends on TRANSPARENT_HUGEPAGE
1010 depends on ARCH_SUPPORTS_HUGE_PFNMAP && HAVE_ARCH_TRANSPARENT_HUGEPAGE
1014 depends on ARCH_SUPPORTS_HUGE_PFNMAP && HAVE_ARCH_TRANSPARENT_HUGEPAGE_PUD
1027 depends on !SMP || !MMU
1029 default y
1045 depends on MMU
1050 subsystems to allocate big physically-contiguous blocks of memory.
1060 depends on CMA && DEBUG_FS
1062 Turns on the DebugFS interface for CMA.
1066 depends on CMA && SYSFS
1073 depends on CMA
1074 default 20 if NUMA
1075 default 8
1081 If unsure, leave the default value "8" in UMA and "20" in NUMA.
1092 # the default page block order is MAX_PAGE_ORDER (10) as per
1098 default 10 if ARCH_FORCE_MAX_ORDER = 0
1100 default ARCH_FORCE_MAX_ORDER if ARCH_FORCE_MAX_ORDER != 0
1107 This config adds a new upper limit of default page block
1110 (see include/linux/pageblock-flags.h for details).
1120 depends on CHECKPOINT_RESTORE && HAVE_ARCH_SOFT_DIRTY && PROC_FS
1124 soft-dirty bit on pte-s. This bit it set when someone writes
1128 See Documentation/admin-guide/mm/soft-dirty.rst for more details.
1134 int "Default maximum user stack size for 32-bit processes (MB)"
1135 default 100
1137 depends on STACK_GROWSUP && (!64BIT || COMPAT)
1139 This is the maximum stack size in Megabytes in the VM layout of 32-bit
1140 user processes when the stack grows upwards (currently only on parisc
1147 depends on SPARSEMEM
1148 depends on !NEED_PER_CPU_KM
1149 depends on 64BIT
1150 depends on !KMSAN
1154 single thread. On very large machines this can take a considerable
1157 This has a potential performance impact on tasks running early in the
1171 depends on SYSFS && MMU
1179 See Documentation/admin-guide/mm/idle_page_tracking.rst for
1195 checking, an architecture-agnostic way to find the stack pointer
1205 default y if ARM64 || X86
1209 depends on !X86_32
1210 default y if ARM64
1214 depends on MEMORY_HOTPLUG
1215 depends on MEMORY_HOTREMOVE
1216 depends on SPARSEMEM_VMEMMAP
1223 "device-physical" addresses which is needed for using a DAX
1234 depends on MMU
1241 depends on ZONE_DEVICE
1263 default y
1268 on EXPERT systems. /proc/vmstat will only show page counts
1279 bool "Enable infrastructure for get_user_pages()-related unit tests"
1280 depends on DEBUG_FS
1283 to make ioctl calls that can launch kernel-based unit tests for
1288 the non-_fast variants.
1290 There is also a sub-test that allows running dump_page() on any
1292 range of user-space addresses. These pages are either pinned via
1299 depends on !GUP_TEST && !DEBUG_FS
1305 tristate "Enable a module to run time tests on dma_pool"
1306 depends on HAS_DMA
1329 default y
1331 depends on ARCH_HAS_SET_DIRECT_MAP
1339 depends on PROC_FS && ADVISE_SYSCALLS && MMU
1363 depends on MMU
1371 default y
1372 depends on HAVE_ARCH_USERFAULTFD_WP
1376 purposes. It is required to enable userfaultfd write protection on
1377 file-backed memory types like shmem and hugetlbfs.
1380 # multi-gen LRU {
1382 bool "Multi-Gen LRU"
1383 depends on MMU
1384 # make sure folio->flags has enough spare bits
1385 depends on 64BIT || !SPARSEMEM || SPARSEMEM_VMEMMAP
1388 Documentation/admin-guide/mm/multigen_lru.rst for details.
1391 bool "Enable by default"
1392 depends on LRU_GEN
1394 This option enables the multi-gen LRU by default.
1398 depends on LRU_GEN
1403 This option has a per-memcg and per-node memory overhead.
1407 depends on LRU_GEN && ARCH_HAS_HW_PTE_YOUNG
1415 depends on ARCH_SUPPORTS_PER_VMA_LOCK && MMU && SMP
1417 Allow per-vma locking during page fault handling.
1424 depends on !STACK_GROWSUP
1437 depends on NUMA_MEMBLKS
1438 depends on X86 || GENERIC_ARCH_NUMA
1448 stacks (eg, x86 CET, arm64 GCS or RISC-V Zicfiss).
1455 default y
1456 depends on ARCH_SUPPORTS_PT_RECLAIM && MMU && SMP