1b2441318SGreg Kroah-Hartman /* SPDX-License-Identifier: GPL-2.0 */ 2f042e707SAndrew Morton #ifndef VM_EVENT_ITEM_H_INCLUDED 3f042e707SAndrew Morton #define VM_EVENT_ITEM_H_INCLUDED 4f042e707SAndrew Morton 5f042e707SAndrew Morton #ifdef CONFIG_ZONE_DMA 6f042e707SAndrew Morton #define DMA_ZONE(xx) xx##_DMA, 7f042e707SAndrew Morton #else 8f042e707SAndrew Morton #define DMA_ZONE(xx) 9f042e707SAndrew Morton #endif 10f042e707SAndrew Morton 11f042e707SAndrew Morton #ifdef CONFIG_ZONE_DMA32 12f042e707SAndrew Morton #define DMA32_ZONE(xx) xx##_DMA32, 13f042e707SAndrew Morton #else 14f042e707SAndrew Morton #define DMA32_ZONE(xx) 15f042e707SAndrew Morton #endif 16f042e707SAndrew Morton 17f042e707SAndrew Morton #ifdef CONFIG_HIGHMEM 18f7ae3a95Syalin wang #define HIGHMEM_ZONE(xx) xx##_HIGH, 19f042e707SAndrew Morton #else 20f042e707SAndrew Morton #define HIGHMEM_ZONE(xx) 21f042e707SAndrew Morton #endif 22f042e707SAndrew Morton 23f7ae3a95Syalin wang #define FOR_ALL_ZONES(xx) DMA_ZONE(xx) DMA32_ZONE(xx) xx##_NORMAL, HIGHMEM_ZONE(xx) xx##_MOVABLE 24f042e707SAndrew Morton 25f042e707SAndrew Morton enum vm_event_item { PGPGIN, PGPGOUT, PSWPIN, PSWPOUT, 26f042e707SAndrew Morton FOR_ALL_ZONES(PGALLOC), 277cc30fcfSMel Gorman FOR_ALL_ZONES(ALLOCSTALL), 287cc30fcfSMel Gorman FOR_ALL_ZONES(PGSCAN_SKIP), 29f7ad2a6cSShaohua Li PGFREE, PGACTIVATE, PGDEACTIVATE, PGLAZYFREE, 30f042e707SAndrew Morton PGFAULT, PGMAJFAULT, 31854e9ed0SMinchan Kim PGLAZYFREED, 32599d0c95SMel Gorman PGREFILL, 33798a6b87SPeter Xu PGREUSE, 34599d0c95SMel Gorman PGSTEAL_KSWAPD, 35599d0c95SMel Gorman PGSTEAL_DIRECT, 36599d0c95SMel Gorman PGSCAN_KSWAPD, 37599d0c95SMel Gorman PGSCAN_DIRECT, 3868243e76SMel Gorman PGSCAN_DIRECT_THROTTLE, 39497a6c1bSJohannes Weiner PGSCAN_ANON, 40497a6c1bSJohannes Weiner PGSCAN_FILE, 41497a6c1bSJohannes Weiner PGSTEAL_ANON, 42497a6c1bSJohannes Weiner PGSTEAL_FILE, 43f042e707SAndrew Morton #ifdef CONFIG_NUMA 44f042e707SAndrew Morton PGSCAN_ZONE_RECLAIM_FAILED, 45f042e707SAndrew Morton #endif 46904249aaSYing Han PGINODESTEAL, SLABS_SCANNED, KSWAPD_INODESTEAL, 47f042e707SAndrew Morton KSWAPD_LOW_WMARK_HIT_QUICKLY, KSWAPD_HIGH_WMARK_HIT_QUICKLY, 487cc30fcfSMel Gorman PAGEOUTRUN, PGROTATED, 495509a5d2SDave Hansen DROP_PAGECACHE, DROP_SLAB, 508e675f7aSKonstantin Khlebnikov OOM_KILL, 5103c5a6e1SMel Gorman #ifdef CONFIG_NUMA_BALANCING 5203c5a6e1SMel Gorman NUMA_PTE_UPDATES, 5372403b4aSMel Gorman NUMA_HUGE_PTE_UPDATES, 5403c5a6e1SMel Gorman NUMA_HINT_FAULTS, 5503c5a6e1SMel Gorman NUMA_HINT_FAULTS_LOCAL, 5603c5a6e1SMel Gorman NUMA_PAGE_MIGRATE, 5703c5a6e1SMel Gorman #endif 585647bc29SMel Gorman #ifdef CONFIG_MIGRATION 595647bc29SMel Gorman PGMIGRATE_SUCCESS, PGMIGRATE_FAIL, 601a5bae25SAnshuman Khandual THP_MIGRATION_SUCCESS, 611a5bae25SAnshuman Khandual THP_MIGRATION_FAIL, 621a5bae25SAnshuman Khandual THP_MIGRATION_SPLIT, 635647bc29SMel Gorman #endif 64f042e707SAndrew Morton #ifdef CONFIG_COMPACTION 65397487dbSMel Gorman COMPACTMIGRATE_SCANNED, COMPACTFREE_SCANNED, 66397487dbSMel Gorman COMPACTISOLATED, 67f042e707SAndrew Morton COMPACTSTALL, COMPACTFAIL, COMPACTSUCCESS, 68698b1b30SVlastimil Babka KCOMPACTD_WAKE, 697f354a54SDavid Rientjes KCOMPACTD_MIGRATE_SCANNED, KCOMPACTD_FREE_SCANNED, 70f042e707SAndrew Morton #endif 71f042e707SAndrew Morton #ifdef CONFIG_HUGETLB_PAGE 72f042e707SAndrew Morton HTLB_BUDDY_PGALLOC, HTLB_BUDDY_PGALLOC_FAIL, 73f042e707SAndrew Morton #endif 74bbb26920SMinchan Kim #ifdef CONFIG_CMA 75bbb26920SMinchan Kim CMA_ALLOC_SUCCESS, 76bbb26920SMinchan Kim CMA_ALLOC_FAIL, 77bbb26920SMinchan Kim #endif 78f042e707SAndrew Morton UNEVICTABLE_PGCULLED, /* culled to noreclaim list */ 79f042e707SAndrew Morton UNEVICTABLE_PGSCANNED, /* scanned for reclaimability */ 80f042e707SAndrew Morton UNEVICTABLE_PGRESCUED, /* rescued from noreclaim list */ 81f042e707SAndrew Morton UNEVICTABLE_PGMLOCKED, 82f042e707SAndrew Morton UNEVICTABLE_PGMUNLOCKED, 83f042e707SAndrew Morton UNEVICTABLE_PGCLEARED, /* on COW, page truncate */ 84f042e707SAndrew Morton UNEVICTABLE_PGSTRANDED, /* unable to isolate on unlock */ 85f042e707SAndrew Morton #ifdef CONFIG_TRANSPARENT_HUGEPAGE 86f042e707SAndrew Morton THP_FAULT_ALLOC, 87f042e707SAndrew Morton THP_FAULT_FALLBACK, 8885b9f46eSDavid Rientjes THP_FAULT_FALLBACK_CHARGE, 89f042e707SAndrew Morton THP_COLLAPSE_ALLOC, 90f042e707SAndrew Morton THP_COLLAPSE_ALLOC_FAILED, 9195ecedcdSKirill A. Shutemov THP_FILE_ALLOC, 92dcdf11eeSDavid Rientjes THP_FILE_FALLBACK, 9385b9f46eSDavid Rientjes THP_FILE_FALLBACK_CHARGE, 9495ecedcdSKirill A. Shutemov THP_FILE_MAPPED, 95122afea9SKirill A. Shutemov THP_SPLIT_PAGE, 96122afea9SKirill A. Shutemov THP_SPLIT_PAGE_FAILED, 97f9719a03SKirill A. Shutemov THP_DEFERRED_SPLIT_PAGE, 98122afea9SKirill A. Shutemov THP_SPLIT_PMD, 99ce9311cfSYisheng Xie #ifdef CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE_PUD 100ce9311cfSYisheng Xie THP_SPLIT_PUD, 101ce9311cfSYisheng Xie #endif 102d8a8e1f0SKirill A. Shutemov THP_ZERO_PAGE_ALLOC, 103d8a8e1f0SKirill A. Shutemov THP_ZERO_PAGE_ALLOC_FAILED, 104225311a4SHuang Ying THP_SWPOUT, 105fe490cc0SHuang Ying THP_SWPOUT_FALLBACK, 106f042e707SAndrew Morton #endif 10709316c09SKonstantin Khlebnikov #ifdef CONFIG_MEMORY_BALLOON 10809316c09SKonstantin Khlebnikov BALLOON_INFLATE, 10909316c09SKonstantin Khlebnikov BALLOON_DEFLATE, 11009316c09SKonstantin Khlebnikov #ifdef CONFIG_BALLOON_COMPACTION 11109316c09SKonstantin Khlebnikov BALLOON_MIGRATE, 11209316c09SKonstantin Khlebnikov #endif 11309316c09SKonstantin Khlebnikov #endif 114ec659934SMel Gorman #ifdef CONFIG_DEBUG_TLBFLUSH 1159824cf97SDave Hansen NR_TLB_REMOTE_FLUSH, /* cpu tried to flush others' tlbs */ 1169824cf97SDave Hansen NR_TLB_REMOTE_FLUSH_RECEIVED,/* cpu received ipi for flush */ 1179824cf97SDave Hansen NR_TLB_LOCAL_FLUSH_ALL, 1189824cf97SDave Hansen NR_TLB_LOCAL_FLUSH_ONE, 119ec659934SMel Gorman #endif /* CONFIG_DEBUG_TLBFLUSH */ 1204f115147SDavidlohr Bueso #ifdef CONFIG_DEBUG_VM_VMACACHE 1214f115147SDavidlohr Bueso VMACACHE_FIND_CALLS, 1224f115147SDavidlohr Bueso VMACACHE_FIND_HITS, 1234f115147SDavidlohr Bueso #endif 124cbc65df2SHuang Ying #ifdef CONFIG_SWAP 125cbc65df2SHuang Ying SWAP_RA, 126cbc65df2SHuang Ying SWAP_RA_HIT, 127cbc65df2SHuang Ying #endif 128*575299eaSSaravanan D #ifdef CONFIG_X86 129*575299eaSSaravanan D DIRECT_MAP_LEVEL2_SPLIT, 130*575299eaSSaravanan D DIRECT_MAP_LEVEL3_SPLIT, 131*575299eaSSaravanan D #endif 132f042e707SAndrew Morton NR_VM_EVENT_ITEMS 133f042e707SAndrew Morton }; 134f042e707SAndrew Morton 13595ecedcdSKirill A. Shutemov #ifndef CONFIG_TRANSPARENT_HUGEPAGE 13695ecedcdSKirill A. Shutemov #define THP_FILE_ALLOC ({ BUILD_BUG(); 0; }) 137dcdf11eeSDavid Rientjes #define THP_FILE_FALLBACK ({ BUILD_BUG(); 0; }) 13885b9f46eSDavid Rientjes #define THP_FILE_FALLBACK_CHARGE ({ BUILD_BUG(); 0; }) 13995ecedcdSKirill A. Shutemov #define THP_FILE_MAPPED ({ BUILD_BUG(); 0; }) 14095ecedcdSKirill A. Shutemov #endif 14195ecedcdSKirill A. Shutemov 142f042e707SAndrew Morton #endif /* VM_EVENT_ITEM_H_INCLUDED */ 143