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 FOR_ALL_ZONES(ALLOCSTALL), 27 FOR_ALL_ZONES(PGSCAN_SKIP), 28 PGFREE, PGACTIVATE, PGDEACTIVATE, PGLAZYFREE, 29 PGFAULT, PGMAJFAULT, 30 PGLAZYFREED, 31 PGREFILL, 32 PGSTEAL_KSWAPD, 33 PGSTEAL_DIRECT, 34 PGSCAN_KSWAPD, 35 PGSCAN_DIRECT, 36 PGSCAN_DIRECT_THROTTLE, 37 #ifdef CONFIG_NUMA 38 PGSCAN_ZONE_RECLAIM_FAILED, 39 #endif 40 PGINODESTEAL, SLABS_SCANNED, KSWAPD_INODESTEAL, 41 KSWAPD_LOW_WMARK_HIT_QUICKLY, KSWAPD_HIGH_WMARK_HIT_QUICKLY, 42 PAGEOUTRUN, PGROTATED, 43 DROP_PAGECACHE, DROP_SLAB, 44 OOM_KILL, 45 #ifdef CONFIG_NUMA_BALANCING 46 NUMA_PTE_UPDATES, 47 NUMA_HUGE_PTE_UPDATES, 48 NUMA_HINT_FAULTS, 49 NUMA_HINT_FAULTS_LOCAL, 50 NUMA_PAGE_MIGRATE, 51 #endif 52 #ifdef CONFIG_MIGRATION 53 PGMIGRATE_SUCCESS, PGMIGRATE_FAIL, 54 #endif 55 #ifdef CONFIG_COMPACTION 56 COMPACTMIGRATE_SCANNED, COMPACTFREE_SCANNED, 57 COMPACTISOLATED, 58 COMPACTSTALL, COMPACTFAIL, COMPACTSUCCESS, 59 KCOMPACTD_WAKE, 60 KCOMPACTD_MIGRATE_SCANNED, KCOMPACTD_FREE_SCANNED, 61 #endif 62 #ifdef CONFIG_HUGETLB_PAGE 63 HTLB_BUDDY_PGALLOC, HTLB_BUDDY_PGALLOC_FAIL, 64 #endif 65 UNEVICTABLE_PGCULLED, /* culled to noreclaim list */ 66 UNEVICTABLE_PGSCANNED, /* scanned for reclaimability */ 67 UNEVICTABLE_PGRESCUED, /* rescued from noreclaim list */ 68 UNEVICTABLE_PGMLOCKED, 69 UNEVICTABLE_PGMUNLOCKED, 70 UNEVICTABLE_PGCLEARED, /* on COW, page truncate */ 71 UNEVICTABLE_PGSTRANDED, /* unable to isolate on unlock */ 72 #ifdef CONFIG_TRANSPARENT_HUGEPAGE 73 THP_FAULT_ALLOC, 74 THP_FAULT_FALLBACK, 75 THP_COLLAPSE_ALLOC, 76 THP_COLLAPSE_ALLOC_FAILED, 77 THP_FILE_ALLOC, 78 THP_FILE_MAPPED, 79 THP_SPLIT_PAGE, 80 THP_SPLIT_PAGE_FAILED, 81 THP_DEFERRED_SPLIT_PAGE, 82 THP_SPLIT_PMD, 83 #ifdef CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE_PUD 84 THP_SPLIT_PUD, 85 #endif 86 THP_ZERO_PAGE_ALLOC, 87 THP_ZERO_PAGE_ALLOC_FAILED, 88 THP_SWPOUT, 89 THP_SWPOUT_FALLBACK, 90 #endif 91 #ifdef CONFIG_MEMORY_BALLOON 92 BALLOON_INFLATE, 93 BALLOON_DEFLATE, 94 #ifdef CONFIG_BALLOON_COMPACTION 95 BALLOON_MIGRATE, 96 #endif 97 #endif 98 #ifdef CONFIG_DEBUG_TLBFLUSH 99 NR_TLB_REMOTE_FLUSH, /* cpu tried to flush others' tlbs */ 100 NR_TLB_REMOTE_FLUSH_RECEIVED,/* cpu received ipi for flush */ 101 NR_TLB_LOCAL_FLUSH_ALL, 102 NR_TLB_LOCAL_FLUSH_ONE, 103 #endif /* CONFIG_DEBUG_TLBFLUSH */ 104 #ifdef CONFIG_DEBUG_VM_VMACACHE 105 VMACACHE_FIND_CALLS, 106 VMACACHE_FIND_HITS, 107 VMACACHE_FULL_FLUSHES, 108 #endif 109 #ifdef CONFIG_SWAP 110 SWAP_RA, 111 SWAP_RA_HIT, 112 #endif 113 NR_VM_EVENT_ITEMS 114 }; 115 116 #ifndef CONFIG_TRANSPARENT_HUGEPAGE 117 #define THP_FILE_ALLOC ({ BUILD_BUG(); 0; }) 118 #define THP_FILE_MAPPED ({ BUILD_BUG(); 0; }) 119 #endif 120 121 #endif /* VM_EVENT_ITEM_H_INCLUDED */ 122