blob: 3a712e2e7d762f479fc91377f1e37a9186172dc9 [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),
Mel Gorman68243e72012-07-31 16:44:39 -070033 PGSCAN_DIRECT_THROTTLE,
Andrew Mortonf042e702011-05-26 16:25:24 -070034#ifdef CONFIG_NUMA
35 PGSCAN_ZONE_RECLAIM_FAILED,
36#endif
Ying Han904249a2012-04-25 16:01:48 -070037 PGINODESTEAL, SLABS_SCANNED, KSWAPD_INODESTEAL,
Andrew Mortonf042e702011-05-26 16:25:24 -070038 KSWAPD_LOW_WMARK_HIT_QUICKLY, KSWAPD_HIGH_WMARK_HIT_QUICKLY,
Andrew Mortonf042e702011-05-26 16:25:24 -070039 PAGEOUTRUN, ALLOCSTALL, PGROTATED,
Mel Gorman03c5a6e2012-11-02 14:52:48 +000040#ifdef CONFIG_NUMA_BALANCING
41 NUMA_PTE_UPDATES,
Mel Gorman72403b42013-11-12 15:08:32 -080042 NUMA_HUGE_PTE_UPDATES,
Mel Gorman03c5a6e2012-11-02 14:52:48 +000043 NUMA_HINT_FAULTS,
44 NUMA_HINT_FAULTS_LOCAL,
45 NUMA_PAGE_MIGRATE,
46#endif
Mel Gorman5647bc22012-10-19 10:46:20 +010047#ifdef CONFIG_MIGRATION
48 PGMIGRATE_SUCCESS, PGMIGRATE_FAIL,
49#endif
Andrew Mortonf042e702011-05-26 16:25:24 -070050#ifdef CONFIG_COMPACTION
Mel Gorman397487d2012-10-19 12:00:10 +010051 COMPACTMIGRATE_SCANNED, COMPACTFREE_SCANNED,
52 COMPACTISOLATED,
Andrew Mortonf042e702011-05-26 16:25:24 -070053 COMPACTSTALL, COMPACTFAIL, COMPACTSUCCESS,
54#endif
55#ifdef CONFIG_HUGETLB_PAGE
56 HTLB_BUDDY_PGALLOC, HTLB_BUDDY_PGALLOC_FAIL,
57#endif
58 UNEVICTABLE_PGCULLED, /* culled to noreclaim list */
59 UNEVICTABLE_PGSCANNED, /* scanned for reclaimability */
60 UNEVICTABLE_PGRESCUED, /* rescued from noreclaim list */
61 UNEVICTABLE_PGMLOCKED,
62 UNEVICTABLE_PGMUNLOCKED,
63 UNEVICTABLE_PGCLEARED, /* on COW, page truncate */
64 UNEVICTABLE_PGSTRANDED, /* unable to isolate on unlock */
Andrew Mortonf042e702011-05-26 16:25:24 -070065#ifdef CONFIG_TRANSPARENT_HUGEPAGE
66 THP_FAULT_ALLOC,
67 THP_FAULT_FALLBACK,
68 THP_COLLAPSE_ALLOC,
69 THP_COLLAPSE_ALLOC_FAILED,
70 THP_SPLIT,
Kirill A. Shutemovd8a8e1f2012-12-12 13:51:09 -080071 THP_ZERO_PAGE_ALLOC,
72 THP_ZERO_PAGE_ALLOC_FAILED,
Andrew Mortonf042e702011-05-26 16:25:24 -070073#endif
Mel Gormanec659932014-01-21 14:33:16 -080074#ifdef CONFIG_DEBUG_TLBFLUSH
Dave Hansen6df46862013-09-11 14:20:24 -070075#ifdef CONFIG_SMP
Dave Hansen9824cf92013-09-11 14:20:23 -070076 NR_TLB_REMOTE_FLUSH, /* cpu tried to flush others' tlbs */
77 NR_TLB_REMOTE_FLUSH_RECEIVED,/* cpu received ipi for flush */
Mel Gormanec659932014-01-21 14:33:16 -080078#endif /* CONFIG_SMP */
Dave Hansen9824cf92013-09-11 14:20:23 -070079 NR_TLB_LOCAL_FLUSH_ALL,
80 NR_TLB_LOCAL_FLUSH_ONE,
Mel Gormanec659932014-01-21 14:33:16 -080081#endif /* CONFIG_DEBUG_TLBFLUSH */
Andrew Mortonf042e702011-05-26 16:25:24 -070082 NR_VM_EVENT_ITEMS
83};
84
85#endif /* VM_EVENT_ITEM_H_INCLUDED */