xref: /linux-6.15/include/linux/vm_event_item.h (revision f9719a03)
1f042e707SAndrew Morton #ifndef VM_EVENT_ITEM_H_INCLUDED
2f042e707SAndrew Morton #define VM_EVENT_ITEM_H_INCLUDED
3f042e707SAndrew Morton 
4f042e707SAndrew Morton #ifdef CONFIG_ZONE_DMA
5f042e707SAndrew Morton #define DMA_ZONE(xx) xx##_DMA,
6f042e707SAndrew Morton #else
7f042e707SAndrew Morton #define DMA_ZONE(xx)
8f042e707SAndrew Morton #endif
9f042e707SAndrew Morton 
10f042e707SAndrew Morton #ifdef CONFIG_ZONE_DMA32
11f042e707SAndrew Morton #define DMA32_ZONE(xx) xx##_DMA32,
12f042e707SAndrew Morton #else
13f042e707SAndrew Morton #define DMA32_ZONE(xx)
14f042e707SAndrew Morton #endif
15f042e707SAndrew Morton 
16f042e707SAndrew Morton #ifdef CONFIG_HIGHMEM
17f7ae3a95Syalin wang #define HIGHMEM_ZONE(xx) xx##_HIGH,
18f042e707SAndrew Morton #else
19f042e707SAndrew Morton #define HIGHMEM_ZONE(xx)
20f042e707SAndrew Morton #endif
21f042e707SAndrew Morton 
22f7ae3a95Syalin wang #define FOR_ALL_ZONES(xx) DMA_ZONE(xx) DMA32_ZONE(xx) xx##_NORMAL, HIGHMEM_ZONE(xx) xx##_MOVABLE
23f042e707SAndrew Morton 
24f042e707SAndrew Morton enum vm_event_item { PGPGIN, PGPGOUT, PSWPIN, PSWPOUT,
25f042e707SAndrew Morton 		FOR_ALL_ZONES(PGALLOC),
26f042e707SAndrew Morton 		PGFREE, PGACTIVATE, PGDEACTIVATE,
27f042e707SAndrew Morton 		PGFAULT, PGMAJFAULT,
28854e9ed0SMinchan Kim 		PGLAZYFREED,
29f042e707SAndrew Morton 		FOR_ALL_ZONES(PGREFILL),
30904249aaSYing Han 		FOR_ALL_ZONES(PGSTEAL_KSWAPD),
31904249aaSYing Han 		FOR_ALL_ZONES(PGSTEAL_DIRECT),
32f042e707SAndrew Morton 		FOR_ALL_ZONES(PGSCAN_KSWAPD),
33f042e707SAndrew Morton 		FOR_ALL_ZONES(PGSCAN_DIRECT),
3468243e76SMel Gorman 		PGSCAN_DIRECT_THROTTLE,
35f042e707SAndrew Morton #ifdef CONFIG_NUMA
36f042e707SAndrew Morton 		PGSCAN_ZONE_RECLAIM_FAILED,
37f042e707SAndrew Morton #endif
38904249aaSYing Han 		PGINODESTEAL, SLABS_SCANNED, KSWAPD_INODESTEAL,
39f042e707SAndrew Morton 		KSWAPD_LOW_WMARK_HIT_QUICKLY, KSWAPD_HIGH_WMARK_HIT_QUICKLY,
40f042e707SAndrew Morton 		PAGEOUTRUN, ALLOCSTALL, PGROTATED,
415509a5d2SDave Hansen 		DROP_PAGECACHE, DROP_SLAB,
4203c5a6e1SMel Gorman #ifdef CONFIG_NUMA_BALANCING
4303c5a6e1SMel Gorman 		NUMA_PTE_UPDATES,
4472403b4aSMel Gorman 		NUMA_HUGE_PTE_UPDATES,
4503c5a6e1SMel Gorman 		NUMA_HINT_FAULTS,
4603c5a6e1SMel Gorman 		NUMA_HINT_FAULTS_LOCAL,
4703c5a6e1SMel Gorman 		NUMA_PAGE_MIGRATE,
4803c5a6e1SMel Gorman #endif
495647bc29SMel Gorman #ifdef CONFIG_MIGRATION
505647bc29SMel Gorman 		PGMIGRATE_SUCCESS, PGMIGRATE_FAIL,
515647bc29SMel Gorman #endif
52f042e707SAndrew Morton #ifdef CONFIG_COMPACTION
53397487dbSMel Gorman 		COMPACTMIGRATE_SCANNED, COMPACTFREE_SCANNED,
54397487dbSMel Gorman 		COMPACTISOLATED,
55f042e707SAndrew Morton 		COMPACTSTALL, COMPACTFAIL, COMPACTSUCCESS,
56698b1b30SVlastimil Babka 		KCOMPACTD_WAKE,
57f042e707SAndrew Morton #endif
58f042e707SAndrew Morton #ifdef CONFIG_HUGETLB_PAGE
59f042e707SAndrew Morton 		HTLB_BUDDY_PGALLOC, HTLB_BUDDY_PGALLOC_FAIL,
60f042e707SAndrew Morton #endif
61f042e707SAndrew Morton 		UNEVICTABLE_PGCULLED,	/* culled to noreclaim list */
62f042e707SAndrew Morton 		UNEVICTABLE_PGSCANNED,	/* scanned for reclaimability */
63f042e707SAndrew Morton 		UNEVICTABLE_PGRESCUED,	/* rescued from noreclaim list */
64f042e707SAndrew Morton 		UNEVICTABLE_PGMLOCKED,
65f042e707SAndrew Morton 		UNEVICTABLE_PGMUNLOCKED,
66f042e707SAndrew Morton 		UNEVICTABLE_PGCLEARED,	/* on COW, page truncate */
67f042e707SAndrew Morton 		UNEVICTABLE_PGSTRANDED,	/* unable to isolate on unlock */
68f042e707SAndrew Morton #ifdef CONFIG_TRANSPARENT_HUGEPAGE
69f042e707SAndrew Morton 		THP_FAULT_ALLOC,
70f042e707SAndrew Morton 		THP_FAULT_FALLBACK,
71f042e707SAndrew Morton 		THP_COLLAPSE_ALLOC,
72f042e707SAndrew Morton 		THP_COLLAPSE_ALLOC_FAILED,
73122afea9SKirill A. Shutemov 		THP_SPLIT_PAGE,
74122afea9SKirill A. Shutemov 		THP_SPLIT_PAGE_FAILED,
75*f9719a03SKirill A. Shutemov 		THP_DEFERRED_SPLIT_PAGE,
76122afea9SKirill A. Shutemov 		THP_SPLIT_PMD,
77d8a8e1f0SKirill A. Shutemov 		THP_ZERO_PAGE_ALLOC,
78d8a8e1f0SKirill A. Shutemov 		THP_ZERO_PAGE_ALLOC_FAILED,
79f042e707SAndrew Morton #endif
8009316c09SKonstantin Khlebnikov #ifdef CONFIG_MEMORY_BALLOON
8109316c09SKonstantin Khlebnikov 		BALLOON_INFLATE,
8209316c09SKonstantin Khlebnikov 		BALLOON_DEFLATE,
8309316c09SKonstantin Khlebnikov #ifdef CONFIG_BALLOON_COMPACTION
8409316c09SKonstantin Khlebnikov 		BALLOON_MIGRATE,
8509316c09SKonstantin Khlebnikov #endif
8609316c09SKonstantin Khlebnikov #endif
87ec659934SMel Gorman #ifdef CONFIG_DEBUG_TLBFLUSH
886df46865SDave Hansen #ifdef CONFIG_SMP
899824cf97SDave Hansen 		NR_TLB_REMOTE_FLUSH,	/* cpu tried to flush others' tlbs */
909824cf97SDave Hansen 		NR_TLB_REMOTE_FLUSH_RECEIVED,/* cpu received ipi for flush */
91ec659934SMel Gorman #endif /* CONFIG_SMP */
929824cf97SDave Hansen 		NR_TLB_LOCAL_FLUSH_ALL,
939824cf97SDave Hansen 		NR_TLB_LOCAL_FLUSH_ONE,
94ec659934SMel Gorman #endif /* CONFIG_DEBUG_TLBFLUSH */
954f115147SDavidlohr Bueso #ifdef CONFIG_DEBUG_VM_VMACACHE
964f115147SDavidlohr Bueso 		VMACACHE_FIND_CALLS,
974f115147SDavidlohr Bueso 		VMACACHE_FIND_HITS,
98f5f302e2SDavidlohr Bueso 		VMACACHE_FULL_FLUSHES,
994f115147SDavidlohr Bueso #endif
100f042e707SAndrew Morton 		NR_VM_EVENT_ITEMS
101f042e707SAndrew Morton };
102f042e707SAndrew Morton 
103f042e707SAndrew Morton #endif		/* VM_EVENT_ITEM_H_INCLUDED */
104