Commit | Line | Data |
---|---|---|
b2441318 | 1 | /* SPDX-License-Identifier: GPL-2.0 */ |
f042e707 AM |
2 | #ifndef VM_EVENT_ITEM_H_INCLUDED |
3 | #define VM_EVENT_ITEM_H_INCLUDED | |
4 | ||
5 | #ifdef CONFIG_ZONE_DMA | |
6 | #define DMA_ZONE(xx) xx##_DMA, | |
7 | #else | |
8 | #define DMA_ZONE(xx) | |
9 | #endif | |
10 | ||
11 | #ifdef CONFIG_ZONE_DMA32 | |
12 | #define DMA32_ZONE(xx) xx##_DMA32, | |
13 | #else | |
14 | #define DMA32_ZONE(xx) | |
15 | #endif | |
16 | ||
17 | #ifdef CONFIG_HIGHMEM | |
f7ae3a95 | 18 | #define HIGHMEM_ZONE(xx) xx##_HIGH, |
f042e707 AM |
19 | #else |
20 | #define HIGHMEM_ZONE(xx) | |
21 | #endif | |
22 | ||
f7ae3a95 | 23 | #define FOR_ALL_ZONES(xx) DMA_ZONE(xx) DMA32_ZONE(xx) xx##_NORMAL, HIGHMEM_ZONE(xx) xx##_MOVABLE |
f042e707 AM |
24 | |
25 | enum vm_event_item { PGPGIN, PGPGOUT, PSWPIN, PSWPOUT, | |
26 | FOR_ALL_ZONES(PGALLOC), | |
7cc30fcf MG |
27 | FOR_ALL_ZONES(ALLOCSTALL), |
28 | FOR_ALL_ZONES(PGSCAN_SKIP), | |
f7ad2a6c | 29 | PGFREE, PGACTIVATE, PGDEACTIVATE, PGLAZYFREE, |
f042e707 | 30 | PGFAULT, PGMAJFAULT, |
854e9ed0 | 31 | PGLAZYFREED, |
599d0c95 | 32 | PGREFILL, |
798a6b87 | 33 | PGREUSE, |
599d0c95 MG |
34 | PGSTEAL_KSWAPD, |
35 | PGSTEAL_DIRECT, | |
668e4147 YS |
36 | PGDEMOTE_KSWAPD, |
37 | PGDEMOTE_DIRECT, | |
599d0c95 MG |
38 | PGSCAN_KSWAPD, |
39 | PGSCAN_DIRECT, | |
68243e76 | 40 | PGSCAN_DIRECT_THROTTLE, |
497a6c1b JW |
41 | PGSCAN_ANON, |
42 | PGSCAN_FILE, | |
43 | PGSTEAL_ANON, | |
44 | PGSTEAL_FILE, | |
f042e707 AM |
45 | #ifdef CONFIG_NUMA |
46 | PGSCAN_ZONE_RECLAIM_FAILED, | |
47 | #endif | |
904249aa | 48 | PGINODESTEAL, SLABS_SCANNED, KSWAPD_INODESTEAL, |
f042e707 | 49 | KSWAPD_LOW_WMARK_HIT_QUICKLY, KSWAPD_HIGH_WMARK_HIT_QUICKLY, |
7cc30fcf | 50 | PAGEOUTRUN, PGROTATED, |
5509a5d2 | 51 | DROP_PAGECACHE, DROP_SLAB, |
8e675f7a | 52 | OOM_KILL, |
03c5a6e1 MG |
53 | #ifdef CONFIG_NUMA_BALANCING |
54 | NUMA_PTE_UPDATES, | |
72403b4a | 55 | NUMA_HUGE_PTE_UPDATES, |
03c5a6e1 MG |
56 | NUMA_HINT_FAULTS, |
57 | NUMA_HINT_FAULTS_LOCAL, | |
58 | NUMA_PAGE_MIGRATE, | |
59 | #endif | |
5647bc29 MG |
60 | #ifdef CONFIG_MIGRATION |
61 | PGMIGRATE_SUCCESS, PGMIGRATE_FAIL, | |
1a5bae25 AK |
62 | THP_MIGRATION_SUCCESS, |
63 | THP_MIGRATION_FAIL, | |
64 | THP_MIGRATION_SPLIT, | |
5647bc29 | 65 | #endif |
f042e707 | 66 | #ifdef CONFIG_COMPACTION |
397487db MG |
67 | COMPACTMIGRATE_SCANNED, COMPACTFREE_SCANNED, |
68 | COMPACTISOLATED, | |
f042e707 | 69 | COMPACTSTALL, COMPACTFAIL, COMPACTSUCCESS, |
698b1b30 | 70 | KCOMPACTD_WAKE, |
7f354a54 | 71 | KCOMPACTD_MIGRATE_SCANNED, KCOMPACTD_FREE_SCANNED, |
f042e707 AM |
72 | #endif |
73 | #ifdef CONFIG_HUGETLB_PAGE | |
74 | HTLB_BUDDY_PGALLOC, HTLB_BUDDY_PGALLOC_FAIL, | |
bbb26920 MK |
75 | #endif |
76 | #ifdef CONFIG_CMA | |
77 | CMA_ALLOC_SUCCESS, | |
78 | CMA_ALLOC_FAIL, | |
f042e707 AM |
79 | #endif |
80 | UNEVICTABLE_PGCULLED, /* culled to noreclaim list */ | |
81 | UNEVICTABLE_PGSCANNED, /* scanned for reclaimability */ | |
82 | UNEVICTABLE_PGRESCUED, /* rescued from noreclaim list */ | |
83 | UNEVICTABLE_PGMLOCKED, | |
84 | UNEVICTABLE_PGMUNLOCKED, | |
85 | UNEVICTABLE_PGCLEARED, /* on COW, page truncate */ | |
86 | UNEVICTABLE_PGSTRANDED, /* unable to isolate on unlock */ | |
f042e707 AM |
87 | #ifdef CONFIG_TRANSPARENT_HUGEPAGE |
88 | THP_FAULT_ALLOC, | |
89 | THP_FAULT_FALLBACK, | |
85b9f46e | 90 | THP_FAULT_FALLBACK_CHARGE, |
f042e707 AM |
91 | THP_COLLAPSE_ALLOC, |
92 | THP_COLLAPSE_ALLOC_FAILED, | |
95ecedcd | 93 | THP_FILE_ALLOC, |
dcdf11ee | 94 | THP_FILE_FALLBACK, |
85b9f46e | 95 | THP_FILE_FALLBACK_CHARGE, |
95ecedcd | 96 | THP_FILE_MAPPED, |
122afea9 KS |
97 | THP_SPLIT_PAGE, |
98 | THP_SPLIT_PAGE_FAILED, | |
f9719a03 | 99 | THP_DEFERRED_SPLIT_PAGE, |
122afea9 | 100 | THP_SPLIT_PMD, |
ce9311cf YX |
101 | #ifdef CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE_PUD |
102 | THP_SPLIT_PUD, | |
103 | #endif | |
d8a8e1f0 KS |
104 | THP_ZERO_PAGE_ALLOC, |
105 | THP_ZERO_PAGE_ALLOC_FAILED, | |
225311a4 | 106 | THP_SWPOUT, |
fe490cc0 | 107 | THP_SWPOUT_FALLBACK, |
f042e707 | 108 | #endif |
09316c09 KK |
109 | #ifdef CONFIG_MEMORY_BALLOON |
110 | BALLOON_INFLATE, | |
111 | BALLOON_DEFLATE, | |
112 | #ifdef CONFIG_BALLOON_COMPACTION | |
113 | BALLOON_MIGRATE, | |
114 | #endif | |
115 | #endif | |
ec659934 | 116 | #ifdef CONFIG_DEBUG_TLBFLUSH |
9824cf97 DH |
117 | NR_TLB_REMOTE_FLUSH, /* cpu tried to flush others' tlbs */ |
118 | NR_TLB_REMOTE_FLUSH_RECEIVED,/* cpu received ipi for flush */ | |
119 | NR_TLB_LOCAL_FLUSH_ALL, | |
120 | NR_TLB_LOCAL_FLUSH_ONE, | |
ec659934 | 121 | #endif /* CONFIG_DEBUG_TLBFLUSH */ |
4f115147 DB |
122 | #ifdef CONFIG_DEBUG_VM_VMACACHE |
123 | VMACACHE_FIND_CALLS, | |
124 | VMACACHE_FIND_HITS, | |
cbc65df2 HY |
125 | #endif |
126 | #ifdef CONFIG_SWAP | |
127 | SWAP_RA, | |
128 | SWAP_RA_HIT, | |
575299ea S |
129 | #endif |
130 | #ifdef CONFIG_X86 | |
131 | DIRECT_MAP_LEVEL2_SPLIT, | |
132 | DIRECT_MAP_LEVEL3_SPLIT, | |
4f115147 | 133 | #endif |
f042e707 AM |
134 | NR_VM_EVENT_ITEMS |
135 | }; | |
136 | ||
95ecedcd KS |
137 | #ifndef CONFIG_TRANSPARENT_HUGEPAGE |
138 | #define THP_FILE_ALLOC ({ BUILD_BUG(); 0; }) | |
dcdf11ee | 139 | #define THP_FILE_FALLBACK ({ BUILD_BUG(); 0; }) |
85b9f46e | 140 | #define THP_FILE_FALLBACK_CHARGE ({ BUILD_BUG(); 0; }) |
95ecedcd KS |
141 | #define THP_FILE_MAPPED ({ BUILD_BUG(); 0; }) |
142 | #endif | |
143 | ||
f042e707 | 144 | #endif /* VM_EVENT_ITEM_H_INCLUDED */ |