1 #ifndef VM_EVENT_ITEM_H_INCLUDED
2 #define VM_EVENT_ITEM_H_INCLUDED
3 
4 #ifdef CONFIG_ZONE_DMA
5 #define DMA_ZONE(xx) xx##_DMA,
6 #else
7 #define DMA_ZONE(xx)
8 #endif
9 
10 #ifdef CONFIG_ZONE_DMA32
11 #define DMA32_ZONE(xx) xx##_DMA32,
12 #else
13 #define DMA32_ZONE(xx)
14 #endif
15 
16 #ifdef CONFIG_HIGHMEM
17 #define HIGHMEM_ZONE(xx) , xx##_HIGH
18 #else
19 #define HIGHMEM_ZONE(xx)
20 #endif
21 
22 #define FOR_ALL_ZONES(xx) DMA_ZONE(xx) DMA32_ZONE(xx) xx##_NORMAL HIGHMEM_ZONE(xx) , xx##_MOVABLE
23 
24 enum vm_event_item { PGPGIN, PGPGOUT, PSWPIN, PSWPOUT,
25 		FOR_ALL_ZONES(PGALLOC),
26 		PGFREE, PGACTIVATE, PGDEACTIVATE,
27 		PGFAULT, PGMAJFAULT,
28 		FOR_ALL_ZONES(PGREFILL),
29 		FOR_ALL_ZONES(PGSTEAL_KSWAPD),
30 		FOR_ALL_ZONES(PGSTEAL_DIRECT),
31 		FOR_ALL_ZONES(PGSCAN_KSWAPD),
32 		FOR_ALL_ZONES(PGSCAN_DIRECT),
33 #ifdef CONFIG_NUMA
34 		PGSCAN_ZONE_RECLAIM_FAILED,
35 #endif
36 		PGINODESTEAL, SLABS_SCANNED, KSWAPD_INODESTEAL,
37 		KSWAPD_LOW_WMARK_HIT_QUICKLY, KSWAPD_HIGH_WMARK_HIT_QUICKLY,
38 		KSWAPD_SKIP_CONGESTION_WAIT,
39 		PAGEOUTRUN, ALLOCSTALL, PGROTATED,
40 #ifdef CONFIG_COMPACTION
41 		COMPACTBLOCKS, COMPACTPAGES, COMPACTPAGEFAILED,
42 		COMPACTSTALL, COMPACTFAIL, COMPACTSUCCESS,
43 #endif
44 #ifdef CONFIG_HUGETLB_PAGE
45 		HTLB_BUDDY_PGALLOC, HTLB_BUDDY_PGALLOC_FAIL,
46 #endif
47 		UNEVICTABLE_PGCULLED,	/* culled to noreclaim list */
48 		UNEVICTABLE_PGSCANNED,	/* scanned for reclaimability */
49 		UNEVICTABLE_PGRESCUED,	/* rescued from noreclaim list */
50 		UNEVICTABLE_PGMLOCKED,
51 		UNEVICTABLE_PGMUNLOCKED,
52 		UNEVICTABLE_PGCLEARED,	/* on COW, page truncate */
53 		UNEVICTABLE_PGSTRANDED,	/* unable to isolate on unlock */
54 		UNEVICTABLE_MLOCKFREED,
55 #ifdef CONFIG_TRANSPARENT_HUGEPAGE
56 		THP_FAULT_ALLOC,
57 		THP_FAULT_FALLBACK,
58 		THP_COLLAPSE_ALLOC,
59 		THP_COLLAPSE_ALLOC_FAILED,
60 		THP_SPLIT,
61 #endif
62 		NR_VM_EVENT_ITEMS
63 };
64 
65 #endif		/* VM_EVENT_ITEM_H_INCLUDED */
66