blob: 8bbb3245f1b9348d8b019dadb3951db895060b50 [file] [log] [blame]
Andrew Mortonf042e702011-05-26 16:25:24 -07001#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
24enum vm_event_item { PGPGIN, PGPGOUT, PSWPIN, PSWPOUT,
25 FOR_ALL_ZONES(PGALLOC),
26 PGFREE, PGACTIVATE, PGDEACTIVATE,
27 PGFAULT, PGMAJFAULT,
28 FOR_ALL_ZONES(PGREFILL),
Ying Han904249a2012-04-25 16:01:48 -070029 FOR_ALL_ZONES(PGSTEAL_KSWAPD),
30 FOR_ALL_ZONES(PGSTEAL_DIRECT),
Andrew Mortonf042e702011-05-26 16:25:24 -070031 FOR_ALL_ZONES(PGSCAN_KSWAPD),
32 FOR_ALL_ZONES(PGSCAN_DIRECT),
33#ifdef CONFIG_NUMA
34 PGSCAN_ZONE_RECLAIM_FAILED,
35#endif
Ying Han904249a2012-04-25 16:01:48 -070036 PGINODESTEAL, SLABS_SCANNED, KSWAPD_INODESTEAL,
Andrew Mortonf042e702011-05-26 16:25:24 -070037 KSWAPD_LOW_WMARK_HIT_QUICKLY, KSWAPD_HIGH_WMARK_HIT_QUICKLY,
38 KSWAPD_SKIP_CONGESTION_WAIT,
39 PAGEOUTRUN, ALLOCSTALL, PGROTATED,
Mel Gormancd9bb9b2012-10-19 10:46:20 +010040#ifdef CONFIG_MIGRATION
41 PGMIGRATE_SUCCESS, PGMIGRATE_FAIL,
42#endif
Andrew Mortonf042e702011-05-26 16:25:24 -070043#ifdef CONFIG_COMPACTION
Mel Gorman3f2afc22012-10-19 12:00:10 +010044 COMPACTMIGRATE_SCANNED, COMPACTFREE_SCANNED,
45 COMPACTISOLATED,
Andrew Mortonf042e702011-05-26 16:25:24 -070046 COMPACTSTALL, COMPACTFAIL, COMPACTSUCCESS,
47#endif
48#ifdef CONFIG_HUGETLB_PAGE
49 HTLB_BUDDY_PGALLOC, HTLB_BUDDY_PGALLOC_FAIL,
50#endif
51 UNEVICTABLE_PGCULLED, /* culled to noreclaim list */
52 UNEVICTABLE_PGSCANNED, /* scanned for reclaimability */
53 UNEVICTABLE_PGRESCUED, /* rescued from noreclaim list */
54 UNEVICTABLE_PGMLOCKED,
55 UNEVICTABLE_PGMUNLOCKED,
56 UNEVICTABLE_PGCLEARED, /* on COW, page truncate */
57 UNEVICTABLE_PGSTRANDED, /* unable to isolate on unlock */
58 UNEVICTABLE_MLOCKFREED,
59#ifdef CONFIG_TRANSPARENT_HUGEPAGE
60 THP_FAULT_ALLOC,
61 THP_FAULT_FALLBACK,
62 THP_COLLAPSE_ALLOC,
63 THP_COLLAPSE_ALLOC_FAILED,
64 THP_SPLIT,
65#endif
66 NR_VM_EVENT_ITEMS
67};
68
69#endif /* VM_EVENT_ITEM_H_INCLUDED */