blob: eff5fbd492d08fa68208771dcf8bf4751bec32af [file] [log] [blame]
Mike Rapoport82381912018-03-21 21:22:48 +02001=====================================
2Linux Memory Management Documentation
3=====================================
4
Matthew Wilcoxacf0f572018-11-19 08:00:49 -08005This is a collection of documents about the Linux memory management (mm)
6subsystem. If you are looking for advice on simply allocating memory,
Tobin C. Hardingcd7198f2019-01-31 15:06:23 +11007see the :ref:`memory_allocation`.
Mike Rapoport82381912018-03-21 21:22:48 +02008
9User guides for MM features
10===========================
11
12The following documents provide guides for controlling and tuning
13various features of the Linux memory management
14
15.. toctree::
16 :maxdepth: 1
17
Mike Rapoport82381912018-03-21 21:22:48 +020018 swap_numa
Mike Rapoport82381912018-03-21 21:22:48 +020019 zswap
20
21Kernel developers MM documentation
22==================================
23
24The below documents describe MM internals with different level of
25details ranging from notes and mailing list responses to elaborate
26descriptions of data structures and algorithms.
27
28.. toctree::
29 :maxdepth: 1
30
31 active_mm
Mauro Carvalho Chehab4d05e3a2020-09-09 16:10:45 +020032 arch_pgtable_helpers
Mike Rapoport82381912018-03-21 21:22:48 +020033 balance
34 cleancache
Mauro Carvalho Chehab90704922020-04-14 18:48:48 +020035 free_page_reporting
Mike Rapoport82381912018-03-21 21:22:48 +020036 frontswap
37 highmem
38 hmm
39 hwpoison
40 hugetlbfs_reserv
Mike Rapoportba229312018-05-29 13:13:38 +030041 ksm
Mike Rapoport7d10bdb2019-04-28 15:17:43 +030042 memory-model
Mike Rapoport82381912018-03-21 21:22:48 +020043 mmu_notifier
44 numa
45 overcommit-accounting
46 page_migration
47 page_frags
48 page_owner
49 remap_file_pages
50 slub
51 split_page_table_lock
Mike Rapoportba229312018-05-29 13:13:38 +030052 transhuge
Mike Rapoport82381912018-03-21 21:22:48 +020053 unevictable-lru
54 z3fold
55 zsmalloc