mm/Kconfig

Source file repositories/reference/linux-study-clean/mm/Kconfig

File Facts

System
Linux kernel
Corpus path
mm/Kconfig
Extension
[no extension]
Size
48316 bytes
Lines
1526
Domain
Core OS
Bucket
Memory Management
Inferred role
Core OS: build/configuration rule
Status
atlas-only

Why This File Exists

Core operating-system implementation surface: boot, tasks, memory, VFS, syscall-facing interfaces, synchronization, credentials, and isolation.

Dependency Surface

Detected Declarations

Annotated Snippet

# SPDX-License-Identifier: GPL-2.0-only

menu "Memory Management options"

#
# For some reason microblaze and nios2 hard code SWAP=n.  Hopefully we can
# add proper SWAP support to them, in which case this can be remove.
#
config ARCH_NO_SWAP
	bool

menuconfig SWAP
	bool "Support for paging of anonymous memory (swap)"
	depends on MMU && BLOCK && !ARCH_NO_SWAP
	default y
	help
	  This option allows you to choose whether you want to have support
	  for so called swap devices or swap files in your kernel that are
	  used to provide more virtual memory than the actual RAM present
	  in your computer.  If unsure say Y.

config ZSWAP
	bool "Compressed cache for swap pages"
	depends on SWAP
	select CRYPTO
	select ZSMALLOC
	help
	  A lightweight compressed cache for swap pages.  It takes
	  pages that are in the process of being swapped out and attempts to
	  compress them into a dynamically allocated RAM-based memory pool.
	  This can result in a significant I/O reduction on swap device and,
	  in the case where decompressing from RAM is faster than swap device
	  reads, can also improve workload performance.

config ZSWAP_DEFAULT_ON
	bool "Enable the compressed cache for swap pages by default"
	depends on ZSWAP
	help
	  If selected, the compressed cache for swap pages will be enabled
	  at boot, otherwise it will be disabled.

	  The selection made here can be overridden by using the kernel
	  command line 'zswap.enabled=' option.

config ZSWAP_SHRINKER_DEFAULT_ON
	bool "Shrink the zswap pool on memory pressure"
	depends on ZSWAP
	default n
	help
	  If selected, the zswap shrinker will be enabled, and the pages
	  stored in the zswap pool will become available for reclaim (i.e
	  written back to the backing swap device) on memory pressure.

	  This means that zswap writeback could happen even if the pool is
	  not yet full, or the cgroup zswap limit has not been reached,
	  reducing the chance that cold pages will reside in the zswap pool
	  and consume memory indefinitely.

choice
	prompt "Default compressor"
	depends on ZSWAP
	default ZSWAP_COMPRESSOR_DEFAULT_LZO
	help
	  Selects the default compression algorithm for the compressed cache
	  for swap pages.

	  For an overview what kind of performance can be expected from
	  a particular compression algorithm please refer to the benchmarks
	  available at the following LWN page:
	  https://lwn.net/Articles/751795/

Annotation

Implementation Notes