1f042e707SAndrew Morton #ifndef VM_EVENT_ITEM_H_INCLUDED 2f042e707SAndrew Morton #define VM_EVENT_ITEM_H_INCLUDED 3f042e707SAndrew Morton 4f042e707SAndrew Morton #ifdef CONFIG_ZONE_DMA 5f042e707SAndrew Morton #define DMA_ZONE(xx) xx##_DMA, 6f042e707SAndrew Morton #else 7f042e707SAndrew Morton #define DMA_ZONE(xx) 8f042e707SAndrew Morton #endif 9f042e707SAndrew Morton 10f042e707SAndrew Morton #ifdef CONFIG_ZONE_DMA32 11f042e707SAndrew Morton #define DMA32_ZONE(xx) xx##_DMA32, 12f042e707SAndrew Morton #else 13f042e707SAndrew Morton #define DMA32_ZONE(xx) 14f042e707SAndrew Morton #endif 15f042e707SAndrew Morton 16f042e707SAndrew Morton #ifdef CONFIG_HIGHMEM 17f7ae3a95Syalin wang #define HIGHMEM_ZONE(xx) xx##_HIGH, 18f042e707SAndrew Morton #else 19f042e707SAndrew Morton #define HIGHMEM_ZONE(xx) 20f042e707SAndrew Morton #endif 21f042e707SAndrew Morton 22f7ae3a95Syalin wang #define FOR_ALL_ZONES(xx) DMA_ZONE(xx) DMA32_ZONE(xx) xx##_NORMAL, HIGHMEM_ZONE(xx) xx##_MOVABLE 23f042e707SAndrew Morton 24f042e707SAndrew Morton enum vm_event_item { PGPGIN, PGPGOUT, PSWPIN, PSWPOUT, 25f042e707SAndrew Morton FOR_ALL_ZONES(PGALLOC), 267cc30fcfSMel Gorman FOR_ALL_ZONES(ALLOCSTALL), 277cc30fcfSMel Gorman FOR_ALL_ZONES(PGSCAN_SKIP), 28f042e707SAndrew Morton PGFREE, PGACTIVATE, PGDEACTIVATE, 29f042e707SAndrew Morton PGFAULT, PGMAJFAULT, 30854e9ed0SMinchan Kim PGLAZYFREED, 31599d0c95SMel Gorman PGREFILL, 32599d0c95SMel Gorman PGSTEAL_KSWAPD, 33599d0c95SMel Gorman PGSTEAL_DIRECT, 34599d0c95SMel Gorman PGSCAN_KSWAPD, 35599d0c95SMel Gorman PGSCAN_DIRECT, 3668243e76SMel Gorman PGSCAN_DIRECT_THROTTLE, 37f042e707SAndrew Morton #ifdef CONFIG_NUMA 38f042e707SAndrew Morton PGSCAN_ZONE_RECLAIM_FAILED, 39f042e707SAndrew Morton #endif 40904249aaSYing Han PGINODESTEAL, SLABS_SCANNED, KSWAPD_INODESTEAL, 41f042e707SAndrew Morton KSWAPD_LOW_WMARK_HIT_QUICKLY, KSWAPD_HIGH_WMARK_HIT_QUICKLY, 427cc30fcfSMel Gorman PAGEOUTRUN, PGROTATED, 435509a5d2SDave Hansen DROP_PAGECACHE, DROP_SLAB, 4403c5a6e1SMel Gorman #ifdef CONFIG_NUMA_BALANCING 4503c5a6e1SMel Gorman NUMA_PTE_UPDATES, 4672403b4aSMel Gorman NUMA_HUGE_PTE_UPDATES, 4703c5a6e1SMel Gorman NUMA_HINT_FAULTS, 4803c5a6e1SMel Gorman NUMA_HINT_FAULTS_LOCAL, 4903c5a6e1SMel Gorman NUMA_PAGE_MIGRATE, 5003c5a6e1SMel Gorman #endif 515647bc29SMel Gorman #ifdef CONFIG_MIGRATION 525647bc29SMel Gorman PGMIGRATE_SUCCESS, PGMIGRATE_FAIL, 535647bc29SMel Gorman #endif 54f042e707SAndrew Morton #ifdef CONFIG_COMPACTION 55397487dbSMel Gorman COMPACTMIGRATE_SCANNED, COMPACTFREE_SCANNED, 56397487dbSMel Gorman COMPACTISOLATED, 57f042e707SAndrew Morton COMPACTSTALL, COMPACTFAIL, COMPACTSUCCESS, 58698b1b30SVlastimil Babka KCOMPACTD_WAKE, 597f354a54SDavid Rientjes KCOMPACTD_MIGRATE_SCANNED, KCOMPACTD_FREE_SCANNED, 60f042e707SAndrew Morton #endif 61f042e707SAndrew Morton #ifdef CONFIG_HUGETLB_PAGE 62f042e707SAndrew Morton HTLB_BUDDY_PGALLOC, HTLB_BUDDY_PGALLOC_FAIL, 63f042e707SAndrew Morton #endif 64f042e707SAndrew Morton UNEVICTABLE_PGCULLED, /* culled to noreclaim list */ 65f042e707SAndrew Morton UNEVICTABLE_PGSCANNED, /* scanned for reclaimability */ 66f042e707SAndrew Morton UNEVICTABLE_PGRESCUED, /* rescued from noreclaim list */ 67f042e707SAndrew Morton UNEVICTABLE_PGMLOCKED, 68f042e707SAndrew Morton UNEVICTABLE_PGMUNLOCKED, 69f042e707SAndrew Morton UNEVICTABLE_PGCLEARED, /* on COW, page truncate */ 70f042e707SAndrew Morton UNEVICTABLE_PGSTRANDED, /* unable to isolate on unlock */ 71f042e707SAndrew Morton #ifdef CONFIG_TRANSPARENT_HUGEPAGE 72f042e707SAndrew Morton THP_FAULT_ALLOC, 73f042e707SAndrew Morton THP_FAULT_FALLBACK, 74f042e707SAndrew Morton THP_COLLAPSE_ALLOC, 75f042e707SAndrew Morton THP_COLLAPSE_ALLOC_FAILED, 7695ecedcdSKirill A. Shutemov THP_FILE_ALLOC, 7795ecedcdSKirill A. Shutemov THP_FILE_MAPPED, 78122afea9SKirill A. Shutemov THP_SPLIT_PAGE, 79122afea9SKirill A. Shutemov THP_SPLIT_PAGE_FAILED, 80f9719a03SKirill A. Shutemov THP_DEFERRED_SPLIT_PAGE, 81122afea9SKirill A. Shutemov THP_SPLIT_PMD, 82*ce9311cfSYisheng Xie #ifdef CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE_PUD 83*ce9311cfSYisheng Xie THP_SPLIT_PUD, 84*ce9311cfSYisheng Xie #endif 85d8a8e1f0SKirill A. Shutemov THP_ZERO_PAGE_ALLOC, 86d8a8e1f0SKirill A. Shutemov THP_ZERO_PAGE_ALLOC_FAILED, 87f042e707SAndrew Morton #endif 8809316c09SKonstantin Khlebnikov #ifdef CONFIG_MEMORY_BALLOON 8909316c09SKonstantin Khlebnikov BALLOON_INFLATE, 9009316c09SKonstantin Khlebnikov BALLOON_DEFLATE, 9109316c09SKonstantin Khlebnikov #ifdef CONFIG_BALLOON_COMPACTION 9209316c09SKonstantin Khlebnikov BALLOON_MIGRATE, 9309316c09SKonstantin Khlebnikov #endif 9409316c09SKonstantin Khlebnikov #endif 95ec659934SMel Gorman #ifdef CONFIG_DEBUG_TLBFLUSH 966df46865SDave Hansen #ifdef CONFIG_SMP 979824cf97SDave Hansen NR_TLB_REMOTE_FLUSH, /* cpu tried to flush others' tlbs */ 989824cf97SDave Hansen NR_TLB_REMOTE_FLUSH_RECEIVED,/* cpu received ipi for flush */ 99ec659934SMel Gorman #endif /* CONFIG_SMP */ 1009824cf97SDave Hansen NR_TLB_LOCAL_FLUSH_ALL, 1019824cf97SDave Hansen NR_TLB_LOCAL_FLUSH_ONE, 102ec659934SMel Gorman #endif /* CONFIG_DEBUG_TLBFLUSH */ 1034f115147SDavidlohr Bueso #ifdef CONFIG_DEBUG_VM_VMACACHE 1044f115147SDavidlohr Bueso VMACACHE_FIND_CALLS, 1054f115147SDavidlohr Bueso VMACACHE_FIND_HITS, 106f5f302e2SDavidlohr Bueso VMACACHE_FULL_FLUSHES, 1074f115147SDavidlohr Bueso #endif 108f042e707SAndrew Morton NR_VM_EVENT_ITEMS 109f042e707SAndrew Morton }; 110f042e707SAndrew Morton 11195ecedcdSKirill A. Shutemov #ifndef CONFIG_TRANSPARENT_HUGEPAGE 11295ecedcdSKirill A. Shutemov #define THP_FILE_ALLOC ({ BUILD_BUG(); 0; }) 11395ecedcdSKirill A. Shutemov #define THP_FILE_MAPPED ({ BUILD_BUG(); 0; }) 11495ecedcdSKirill A. Shutemov #endif 11595ecedcdSKirill A. Shutemov 116f042e707SAndrew Morton #endif /* VM_EVENT_ITEM_H_INCLUDED */ 117