GNU Linux-libre 6.9-gnu
[releases.git] / Documentation / core-api / mm-api.rst
1 ======================
2 Memory Management APIs
3 ======================
4
5 User Space Memory Access
6 ========================
7
8 .. kernel-doc:: arch/x86/include/asm/uaccess.h
9    :internal:
10
11 .. kernel-doc:: arch/x86/lib/usercopy_32.c
12    :export:
13
14 .. kernel-doc:: mm/gup.c
15    :functions: get_user_pages_fast
16
17 .. _mm-api-gfp-flags:
18
19 Memory Allocation Controls
20 ==========================
21
22 .. kernel-doc:: include/linux/gfp_types.h
23    :doc: Page mobility and placement hints
24
25 .. kernel-doc:: include/linux/gfp_types.h
26    :doc: Watermark modifiers
27
28 .. kernel-doc:: include/linux/gfp_types.h
29    :doc: Reclaim modifiers
30
31 .. kernel-doc:: include/linux/gfp_types.h
32    :doc: Useful GFP flag combinations
33
34 The Slab Cache
35 ==============
36
37 .. kernel-doc:: include/linux/slab.h
38    :internal:
39
40 .. kernel-doc:: mm/slub.c
41    :export:
42
43 .. kernel-doc:: mm/slab_common.c
44    :export:
45
46 .. kernel-doc:: mm/util.c
47    :functions: kfree_const kvmalloc_node kvfree
48
49 Virtually Contiguous Mappings
50 =============================
51
52 .. kernel-doc:: mm/vmalloc.c
53    :export:
54
55 File Mapping and Page Cache
56 ===========================
57
58 Filemap
59 -------
60
61 .. kernel-doc:: mm/filemap.c
62    :export:
63
64 Readahead
65 ---------
66
67 .. kernel-doc:: mm/readahead.c
68    :doc: Readahead Overview
69
70 .. kernel-doc:: mm/readahead.c
71    :export:
72
73 Writeback
74 ---------
75
76 .. kernel-doc:: mm/page-writeback.c
77    :export:
78
79 Truncate
80 --------
81
82 .. kernel-doc:: mm/truncate.c
83    :export:
84
85 .. kernel-doc:: include/linux/pagemap.h
86    :internal:
87
88 Memory pools
89 ============
90
91 .. kernel-doc:: mm/mempool.c
92    :export:
93
94 DMA pools
95 =========
96
97 .. kernel-doc:: mm/dmapool.c
98    :export:
99
100 More Memory Management Functions
101 ================================
102
103 .. kernel-doc:: mm/memory.c
104    :export:
105
106 .. kernel-doc:: mm/page_alloc.c
107 .. kernel-doc:: mm/mempolicy.c
108 .. kernel-doc:: include/linux/mm_types.h
109    :internal:
110 .. kernel-doc:: include/linux/mm_inline.h
111 .. kernel-doc:: include/linux/page-flags.h
112 .. kernel-doc:: include/linux/mm.h
113    :internal:
114 .. kernel-doc:: include/linux/page_ref.h
115 .. kernel-doc:: include/linux/mmzone.h
116 .. kernel-doc:: mm/util.c
117    :functions: folio_mapping
118
119 .. kernel-doc:: mm/rmap.c
120 .. kernel-doc:: mm/migrate.c
121 .. kernel-doc:: mm/mmap.c
122 .. kernel-doc:: mm/kmemleak.c
123 .. #kernel-doc:: mm/hmm.c (build warnings)
124 .. kernel-doc:: mm/memremap.c
125 .. kernel-doc:: mm/hugetlb.c
126 .. kernel-doc:: mm/swap.c
127 .. kernel-doc:: mm/zpool.c
128 .. kernel-doc:: mm/memcontrol.c
129 .. #kernel-doc:: mm/memory-tiers.c (build warnings)
130 .. kernel-doc:: mm/shmem.c
131 .. kernel-doc:: mm/migrate_device.c
132 .. #kernel-doc:: mm/nommu.c (duplicates kernel-doc from other files)
133 .. kernel-doc:: mm/mapping_dirty_helpers.c
134 .. #kernel-doc:: mm/memory-failure.c (build warnings)
135 .. kernel-doc:: mm/percpu.c
136 .. kernel-doc:: mm/maccess.c
137 .. kernel-doc:: mm/vmscan.c
138 .. kernel-doc:: mm/memory_hotplug.c
139 .. kernel-doc:: mm/mmu_notifier.c
140 .. kernel-doc:: mm/balloon_compaction.c
141 .. kernel-doc:: mm/huge_memory.c
142 .. kernel-doc:: mm/io-mapping.c