xref: /openbmc/linux/Documentation/core-api/mm-api.rst (revision c900529f3d9161bfde5cca0754f83b4d3c3e0220)
141f35b39SMike Rapoport======================
241f35b39SMike RapoportMemory Management APIs
341f35b39SMike Rapoport======================
441f35b39SMike Rapoport
541f35b39SMike RapoportUser Space Memory Access
641f35b39SMike Rapoport========================
741f35b39SMike Rapoport
841f35b39SMike Rapoport.. kernel-doc:: arch/x86/include/asm/uaccess.h
941f35b39SMike Rapoport   :internal:
1041f35b39SMike Rapoport
1141f35b39SMike Rapoport.. kernel-doc:: arch/x86/lib/usercopy_32.c
1241f35b39SMike Rapoport   :export:
1341f35b39SMike Rapoport
14cc84ac35SJonathan Corbet.. kernel-doc:: mm/gup.c
1541f35b39SMike Rapoport   :functions: get_user_pages_fast
1641f35b39SMike Rapoport
1709700f8aSMike Rapoport.. _mm-api-gfp-flags:
1809700f8aSMike Rapoport
19038a07a5SMike RapoportMemory Allocation Controls
20038a07a5SMike Rapoport==========================
21038a07a5SMike Rapoport
227343f2b0SYury Norov.. kernel-doc:: include/linux/gfp_types.h
23038a07a5SMike Rapoport   :doc: Page mobility and placement hints
24038a07a5SMike Rapoport
257343f2b0SYury Norov.. kernel-doc:: include/linux/gfp_types.h
26038a07a5SMike Rapoport   :doc: Watermark modifiers
27038a07a5SMike Rapoport
287343f2b0SYury Norov.. kernel-doc:: include/linux/gfp_types.h
29038a07a5SMike Rapoport   :doc: Reclaim modifiers
30038a07a5SMike Rapoport
317343f2b0SYury Norov.. kernel-doc:: include/linux/gfp_types.h
3280a76c72SMike Rapoport   :doc: Useful GFP flag combinations
33038a07a5SMike Rapoport
3441f35b39SMike RapoportThe Slab Cache
3541f35b39SMike Rapoport==============
3641f35b39SMike Rapoport
3741f35b39SMike Rapoport.. kernel-doc:: include/linux/slab.h
3841f35b39SMike Rapoport   :internal:
3941f35b39SMike Rapoport
4041f35b39SMike Rapoport.. kernel-doc:: mm/slab.c
4141f35b39SMike Rapoport   :export:
4241f35b39SMike Rapoport
4354a67c75SMike Rapoport.. kernel-doc:: mm/slab_common.c
4454a67c75SMike Rapoport   :export:
4554a67c75SMike Rapoport
4641f35b39SMike Rapoport.. kernel-doc:: mm/util.c
4741f35b39SMike Rapoport   :functions: kfree_const kvmalloc_node kvfree
4841f35b39SMike Rapoport
492f7e6f6bSMike RapoportVirtually Contiguous Mappings
502f7e6f6bSMike Rapoport=============================
512f7e6f6bSMike Rapoport
522f7e6f6bSMike Rapoport.. kernel-doc:: mm/vmalloc.c
532f7e6f6bSMike Rapoport   :export:
542f7e6f6bSMike Rapoport
552f7e6f6bSMike RapoportFile Mapping and Page Cache
562f7e6f6bSMike Rapoport===========================
5741f35b39SMike Rapoport
5884dacdbdSNeilBrownFilemap
5984dacdbdSNeilBrown-------
6041f35b39SMike Rapoport
6141f35b39SMike Rapoport.. kernel-doc:: mm/filemap.c
6241f35b39SMike Rapoport   :export:
6341f35b39SMike Rapoport
6484dacdbdSNeilBrownReadahead
6584dacdbdSNeilBrown---------
6684dacdbdSNeilBrown
6784dacdbdSNeilBrown.. kernel-doc:: mm/readahead.c
6884dacdbdSNeilBrown   :doc: Readahead Overview
6984dacdbdSNeilBrown
7084dacdbdSNeilBrown.. kernel-doc:: mm/readahead.c
7184dacdbdSNeilBrown   :export:
7284dacdbdSNeilBrown
7384dacdbdSNeilBrownWriteback
7484dacdbdSNeilBrown---------
7584dacdbdSNeilBrown
7641f35b39SMike Rapoport.. kernel-doc:: mm/page-writeback.c
7741f35b39SMike Rapoport   :export:
7841f35b39SMike Rapoport
7984dacdbdSNeilBrownTruncate
8084dacdbdSNeilBrown--------
8184dacdbdSNeilBrown
8241f35b39SMike Rapoport.. kernel-doc:: mm/truncate.c
8341f35b39SMike Rapoport   :export:
842f7e6f6bSMike Rapoport
85767e5ee5SMatthew Wilcox (Oracle).. kernel-doc:: include/linux/pagemap.h
86767e5ee5SMatthew Wilcox (Oracle)   :internal:
87767e5ee5SMatthew Wilcox (Oracle)
882f7e6f6bSMike RapoportMemory pools
892f7e6f6bSMike Rapoport============
902f7e6f6bSMike Rapoport
912f7e6f6bSMike Rapoport.. kernel-doc:: mm/mempool.c
922f7e6f6bSMike Rapoport   :export:
932f7e6f6bSMike Rapoport
942f7e6f6bSMike RapoportDMA pools
952f7e6f6bSMike Rapoport=========
962f7e6f6bSMike Rapoport
972f7e6f6bSMike Rapoport.. kernel-doc:: mm/dmapool.c
982f7e6f6bSMike Rapoport   :export:
992f7e6f6bSMike Rapoport
1002f7e6f6bSMike RapoportMore Memory Management Functions
1012f7e6f6bSMike Rapoport================================
1022f7e6f6bSMike Rapoport
1032f7e6f6bSMike Rapoport.. kernel-doc:: mm/memory.c
1042f7e6f6bSMike Rapoport   :export:
1052f7e6f6bSMike Rapoport
1062f7e6f6bSMike Rapoport.. kernel-doc:: mm/page_alloc.c
1075f076944SMatthew Wilcox (Oracle).. kernel-doc:: mm/mempolicy.c
108a87132a2SMatthew Wilcox (Oracle).. kernel-doc:: include/linux/mm_types.h
109a87132a2SMatthew Wilcox (Oracle)   :internal:
110889a3747SMatthew Wilcox (Oracle).. kernel-doc:: include/linux/mm_inline.h
1117b230db3SMatthew Wilcox (Oracle).. kernel-doc:: include/linux/page-flags.h
112a87132a2SMatthew Wilcox (Oracle).. kernel-doc:: include/linux/mm.h
113a87132a2SMatthew Wilcox (Oracle)   :internal:
114c24016acSMatthew Wilcox (Oracle).. kernel-doc:: include/linux/page_ref.h
115198fba41SMike Rapoport.. kernel-doc:: include/linux/mmzone.h
1162f52578fSMatthew Wilcox (Oracle).. kernel-doc:: mm/util.c
1172f52578fSMatthew Wilcox (Oracle)   :functions: folio_mapping
118*61ff748bSMatthew Wilcox (Oracle)
119*61ff748bSMatthew Wilcox (Oracle).. kernel-doc:: mm/rmap.c
120*61ff748bSMatthew Wilcox (Oracle).. kernel-doc:: mm/migrate.c
121*61ff748bSMatthew Wilcox (Oracle).. kernel-doc:: mm/mmap.c
122*61ff748bSMatthew Wilcox (Oracle).. kernel-doc:: mm/kmemleak.c
123*61ff748bSMatthew Wilcox (Oracle).. #kernel-doc:: mm/hmm.c (build warnings)
124*61ff748bSMatthew Wilcox (Oracle).. kernel-doc:: mm/memremap.c
125*61ff748bSMatthew Wilcox (Oracle).. kernel-doc:: mm/hugetlb.c
126*61ff748bSMatthew Wilcox (Oracle).. kernel-doc:: mm/swap.c
127*61ff748bSMatthew Wilcox (Oracle).. kernel-doc:: mm/zpool.c
128*61ff748bSMatthew Wilcox (Oracle).. kernel-doc:: mm/memcontrol.c
129*61ff748bSMatthew Wilcox (Oracle).. #kernel-doc:: mm/memory-tiers.c (build warnings)
130*61ff748bSMatthew Wilcox (Oracle).. kernel-doc:: mm/shmem.c
131*61ff748bSMatthew Wilcox (Oracle).. kernel-doc:: mm/migrate_device.c
132*61ff748bSMatthew Wilcox (Oracle).. #kernel-doc:: mm/nommu.c (duplicates kernel-doc from other files)
133*61ff748bSMatthew Wilcox (Oracle).. kernel-doc:: mm/mapping_dirty_helpers.c
134*61ff748bSMatthew Wilcox (Oracle).. #kernel-doc:: mm/memory-failure.c (build warnings)
135*61ff748bSMatthew Wilcox (Oracle).. kernel-doc:: mm/percpu.c
136*61ff748bSMatthew Wilcox (Oracle).. kernel-doc:: mm/maccess.c
137*61ff748bSMatthew Wilcox (Oracle).. kernel-doc:: mm/vmscan.c
138*61ff748bSMatthew Wilcox (Oracle).. kernel-doc:: mm/memory_hotplug.c
139*61ff748bSMatthew Wilcox (Oracle).. kernel-doc:: mm/mmu_notifier.c
140*61ff748bSMatthew Wilcox (Oracle).. kernel-doc:: mm/balloon_compaction.c
141*61ff748bSMatthew Wilcox (Oracle).. kernel-doc:: mm/huge_memory.c
142*61ff748bSMatthew Wilcox (Oracle).. kernel-doc:: mm/io-mapping.c
143