xref: /openbmc/linux/Documentation/core-api/mm-api.rst (revision 7343f2b0db4961d9f386e685e651c663dc763d0c)
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
223b2ebeafSMatthew Wilcox (Oracle).. kernel-doc:: include/linux/gfp.h
233b2ebeafSMatthew Wilcox (Oracle)   :internal:
24038a07a5SMike Rapoport
25*7343f2b0SYury Norov.. kernel-doc:: include/linux/gfp_types.h
26038a07a5SMike Rapoport   :doc: Page mobility and placement hints
27038a07a5SMike Rapoport
28*7343f2b0SYury Norov.. kernel-doc:: include/linux/gfp_types.h
29038a07a5SMike Rapoport   :doc: Watermark modifiers
30038a07a5SMike Rapoport
31*7343f2b0SYury Norov.. kernel-doc:: include/linux/gfp_types.h
32038a07a5SMike Rapoport   :doc: Reclaim modifiers
33038a07a5SMike Rapoport
34*7343f2b0SYury Norov.. kernel-doc:: include/linux/gfp_types.h
3580a76c72SMike Rapoport   :doc: Useful GFP flag combinations
36038a07a5SMike Rapoport
3741f35b39SMike RapoportThe Slab Cache
3841f35b39SMike Rapoport==============
3941f35b39SMike Rapoport
4041f35b39SMike Rapoport.. kernel-doc:: include/linux/slab.h
4141f35b39SMike Rapoport   :internal:
4241f35b39SMike Rapoport
4341f35b39SMike Rapoport.. kernel-doc:: mm/slab.c
4441f35b39SMike Rapoport   :export:
4541f35b39SMike Rapoport
4654a67c75SMike Rapoport.. kernel-doc:: mm/slab_common.c
4754a67c75SMike Rapoport   :export:
4854a67c75SMike Rapoport
4941f35b39SMike Rapoport.. kernel-doc:: mm/util.c
5041f35b39SMike Rapoport   :functions: kfree_const kvmalloc_node kvfree
5141f35b39SMike Rapoport
522f7e6f6bSMike RapoportVirtually Contiguous Mappings
532f7e6f6bSMike Rapoport=============================
542f7e6f6bSMike Rapoport
552f7e6f6bSMike Rapoport.. kernel-doc:: mm/vmalloc.c
562f7e6f6bSMike Rapoport   :export:
572f7e6f6bSMike Rapoport
582f7e6f6bSMike RapoportFile Mapping and Page Cache
592f7e6f6bSMike Rapoport===========================
6041f35b39SMike Rapoport
6184dacdbdSNeilBrownFilemap
6284dacdbdSNeilBrown-------
6341f35b39SMike Rapoport
6441f35b39SMike Rapoport.. kernel-doc:: mm/filemap.c
6541f35b39SMike Rapoport   :export:
6641f35b39SMike Rapoport
6784dacdbdSNeilBrownReadahead
6884dacdbdSNeilBrown---------
6984dacdbdSNeilBrown
7084dacdbdSNeilBrown.. kernel-doc:: mm/readahead.c
7184dacdbdSNeilBrown   :doc: Readahead Overview
7284dacdbdSNeilBrown
7384dacdbdSNeilBrown.. kernel-doc:: mm/readahead.c
7484dacdbdSNeilBrown   :export:
7584dacdbdSNeilBrown
7684dacdbdSNeilBrownWriteback
7784dacdbdSNeilBrown---------
7884dacdbdSNeilBrown
7941f35b39SMike Rapoport.. kernel-doc:: mm/page-writeback.c
8041f35b39SMike Rapoport   :export:
8141f35b39SMike Rapoport
8284dacdbdSNeilBrownTruncate
8384dacdbdSNeilBrown--------
8484dacdbdSNeilBrown
8541f35b39SMike Rapoport.. kernel-doc:: mm/truncate.c
8641f35b39SMike Rapoport   :export:
872f7e6f6bSMike Rapoport
88767e5ee5SMatthew Wilcox (Oracle).. kernel-doc:: include/linux/pagemap.h
89767e5ee5SMatthew Wilcox (Oracle)   :internal:
90767e5ee5SMatthew Wilcox (Oracle)
912f7e6f6bSMike RapoportMemory pools
922f7e6f6bSMike Rapoport============
932f7e6f6bSMike Rapoport
942f7e6f6bSMike Rapoport.. kernel-doc:: mm/mempool.c
952f7e6f6bSMike Rapoport   :export:
962f7e6f6bSMike Rapoport
972f7e6f6bSMike RapoportDMA pools
982f7e6f6bSMike Rapoport=========
992f7e6f6bSMike Rapoport
1002f7e6f6bSMike Rapoport.. kernel-doc:: mm/dmapool.c
1012f7e6f6bSMike Rapoport   :export:
1022f7e6f6bSMike Rapoport
1032f7e6f6bSMike RapoportMore Memory Management Functions
1042f7e6f6bSMike Rapoport================================
1052f7e6f6bSMike Rapoport
1062f7e6f6bSMike Rapoport.. kernel-doc:: mm/memory.c
1072f7e6f6bSMike Rapoport   :export:
1082f7e6f6bSMike Rapoport
1092f7e6f6bSMike Rapoport.. kernel-doc:: mm/page_alloc.c
1105f076944SMatthew Wilcox (Oracle).. kernel-doc:: mm/mempolicy.c
111a87132a2SMatthew Wilcox (Oracle).. kernel-doc:: include/linux/mm_types.h
112a87132a2SMatthew Wilcox (Oracle)   :internal:
113889a3747SMatthew Wilcox (Oracle).. kernel-doc:: include/linux/mm_inline.h
1147b230db3SMatthew Wilcox (Oracle).. kernel-doc:: include/linux/page-flags.h
115a87132a2SMatthew Wilcox (Oracle).. kernel-doc:: include/linux/mm.h
116a87132a2SMatthew Wilcox (Oracle)   :internal:
117c24016acSMatthew Wilcox (Oracle).. kernel-doc:: include/linux/page_ref.h
118198fba41SMike Rapoport.. kernel-doc:: include/linux/mmzone.h
1192f52578fSMatthew Wilcox (Oracle).. kernel-doc:: mm/util.c
1202f52578fSMatthew Wilcox (Oracle)   :functions: folio_mapping
121