| /* SPDX-License-Identifier: GPL-2.0 */ | |
| #ifndef VM_EVENT_ITEM_H_INCLUDED | |
| #define VM_EVENT_ITEM_H_INCLUDED | |
| #ifdef CONFIG_ZONE_DMA | |
| #define DMA_ZONE(xx) xx##_DMA, | |
| #else | |
| #define DMA_ZONE(xx) | |
| #endif | |
| #ifdef CONFIG_ZONE_DMA32 | |
| #define DMA32_ZONE(xx) xx##_DMA32, | |
| #else | |
| #define DMA32_ZONE(xx) | |
| #endif | |
| #ifdef CONFIG_HIGHMEM | |
| #define HIGHMEM_ZONE(xx) xx##_HIGH, | |
| #else | |
| #define HIGHMEM_ZONE(xx) | |
| #endif | |
| #ifdef CONFIG_ZONE_DEVICE | |
| #define DEVICE_ZONE(xx) xx##_DEVICE, | |
| #else | |
| #define DEVICE_ZONE(xx) | |
| #endif | |
| #define FOR_ALL_ZONES(xx) DMA_ZONE(xx) DMA32_ZONE(xx) xx##_NORMAL, \ | |
| HIGHMEM_ZONE(xx) xx##_MOVABLE, DEVICE_ZONE(xx) | |
| enum vm_event_item { PGPGIN, PGPGOUT, PSWPIN, PSWPOUT, | |
| FOR_ALL_ZONES(PGALLOC) | |
| FOR_ALL_ZONES(ALLOCSTALL) | |
| FOR_ALL_ZONES(PGSCAN_SKIP) | |
| PGFREE, PGACTIVATE, PGDEACTIVATE, PGLAZYFREE, | |
| PGFAULT, PGMAJFAULT, | |
| PGLAZYFREED, | |
| PGREFILL, | |
| PGREUSE, | |
| PGSTEAL_KSWAPD, | |
| PGSTEAL_DIRECT, | |
| PGSTEAL_KHUGEPAGED, | |
| PGDEMOTE_KSWAPD, | |
| PGDEMOTE_DIRECT, | |
| PGDEMOTE_KHUGEPAGED, | |
| PGSCAN_KSWAPD, | |
| PGSCAN_DIRECT, | |
| PGSCAN_KHUGEPAGED, | |
| PGSCAN_DIRECT_THROTTLE, | |
| PGSCAN_ANON, | |
| PGSCAN_FILE, | |
| PGSTEAL_ANON, | |
| PGSTEAL_FILE, | |
| #ifdef CONFIG_NUMA | |
| PGSCAN_ZONE_RECLAIM_FAILED, | |
| #endif | |
| PGINODESTEAL, SLABS_SCANNED, KSWAPD_INODESTEAL, | |
| KSWAPD_LOW_WMARK_HIT_QUICKLY, KSWAPD_HIGH_WMARK_HIT_QUICKLY, | |
| PAGEOUTRUN, PGROTATED, | |
| DROP_PAGECACHE, DROP_SLAB, | |
| OOM_KILL, | |
| #ifdef CONFIG_NUMA_BALANCING | |
| NUMA_PTE_UPDATES, | |
| NUMA_HUGE_PTE_UPDATES, | |
| NUMA_HINT_FAULTS, | |
| NUMA_HINT_FAULTS_LOCAL, | |
| NUMA_PAGE_MIGRATE, | |
| #endif | |
| #ifdef CONFIG_MIGRATION | |
| PGMIGRATE_SUCCESS, PGMIGRATE_FAIL, | |
| THP_MIGRATION_SUCCESS, | |
| THP_MIGRATION_FAIL, | |
| THP_MIGRATION_SPLIT, | |
| #endif | |
| #ifdef CONFIG_COMPACTION | |
| COMPACTMIGRATE_SCANNED, COMPACTFREE_SCANNED, | |
| COMPACTISOLATED, | |
| COMPACTSTALL, COMPACTFAIL, COMPACTSUCCESS, | |
| KCOMPACTD_WAKE, | |
| KCOMPACTD_MIGRATE_SCANNED, KCOMPACTD_FREE_SCANNED, | |
| #endif | |
| #ifdef CONFIG_HUGETLB_PAGE | |
| HTLB_BUDDY_PGALLOC, HTLB_BUDDY_PGALLOC_FAIL, | |
| #endif | |
| #ifdef CONFIG_CMA | |
| CMA_ALLOC_SUCCESS, | |
| CMA_ALLOC_FAIL, | |
| #endif | |
| UNEVICTABLE_PGCULLED, /* culled to noreclaim list */ | |
| UNEVICTABLE_PGSCANNED, /* scanned for reclaimability */ | |
| UNEVICTABLE_PGRESCUED, /* rescued from noreclaim list */ | |
| UNEVICTABLE_PGMLOCKED, | |
| UNEVICTABLE_PGMUNLOCKED, | |
| UNEVICTABLE_PGCLEARED, /* on COW, page truncate */ | |
| UNEVICTABLE_PGSTRANDED, /* unable to isolate on unlock */ | |
| #ifdef CONFIG_TRANSPARENT_HUGEPAGE | |
| THP_FAULT_ALLOC, | |
| THP_FAULT_FALLBACK, | |
| THP_FAULT_FALLBACK_CHARGE, | |
| THP_COLLAPSE_ALLOC, | |
| THP_COLLAPSE_ALLOC_FAILED, | |
| THP_FILE_ALLOC, | |
| THP_FILE_FALLBACK, | |
| THP_FILE_FALLBACK_CHARGE, | |
| THP_FILE_MAPPED, | |
| THP_SPLIT_PAGE, | |
| THP_SPLIT_PAGE_FAILED, | |
| THP_DEFERRED_SPLIT_PAGE, | |
| THP_SPLIT_PMD, | |
| THP_SCAN_EXCEED_NONE_PTE, | |
| THP_SCAN_EXCEED_SWAP_PTE, | |
| THP_SCAN_EXCEED_SHARED_PTE, | |
| #ifdef CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE_PUD | |
| THP_SPLIT_PUD, | |
| #endif | |
| THP_ZERO_PAGE_ALLOC, | |
| THP_ZERO_PAGE_ALLOC_FAILED, | |
| THP_SWPOUT, | |
| THP_SWPOUT_FALLBACK, | |
| #endif | |
| #ifdef CONFIG_MEMORY_BALLOON | |
| BALLOON_INFLATE, | |
| BALLOON_DEFLATE, | |
| #ifdef CONFIG_BALLOON_COMPACTION | |
| BALLOON_MIGRATE, | |
| #endif | |
| #endif | |
| #ifdef CONFIG_DEBUG_TLBFLUSH | |
| NR_TLB_REMOTE_FLUSH, /* cpu tried to flush others' tlbs */ | |
| NR_TLB_REMOTE_FLUSH_RECEIVED,/* cpu received ipi for flush */ | |
| NR_TLB_LOCAL_FLUSH_ALL, | |
| NR_TLB_LOCAL_FLUSH_ONE, | |
| #endif /* CONFIG_DEBUG_TLBFLUSH */ | |
| #ifdef CONFIG_SWAP | |
| SWAP_RA, | |
| SWAP_RA_HIT, | |
| #ifdef CONFIG_KSM | |
| KSM_SWPIN_COPY, | |
| #endif | |
| #endif | |
| #ifdef CONFIG_KSM | |
| COW_KSM, | |
| #endif | |
| #ifdef CONFIG_ZSWAP | |
| ZSWPIN, | |
| ZSWPOUT, | |
| ZSWPWB, | |
| #endif | |
| #ifdef CONFIG_X86 | |
| DIRECT_MAP_LEVEL2_SPLIT, | |
| DIRECT_MAP_LEVEL3_SPLIT, | |
| #endif | |
| #ifdef CONFIG_PER_VMA_LOCK_STATS | |
| VMA_LOCK_SUCCESS, | |
| VMA_LOCK_ABORT, | |
| VMA_LOCK_RETRY, | |
| VMA_LOCK_MISS, | |
| #endif | |
| NR_VM_EVENT_ITEMS | |
| }; | |
| #ifndef CONFIG_TRANSPARENT_HUGEPAGE | |
| #define THP_FILE_ALLOC ({ BUILD_BUG(); 0; }) | |
| #define THP_FILE_FALLBACK ({ BUILD_BUG(); 0; }) | |
| #define THP_FILE_FALLBACK_CHARGE ({ BUILD_BUG(); 0; }) | |
| #define THP_FILE_MAPPED ({ BUILD_BUG(); 0; }) | |
| #endif | |
| #endif /* VM_EVENT_ITEM_H_INCLUDED */ |