diff options
Diffstat (limited to 'include/linux/mmzone.h')
-rw-r--r-- | include/linux/mmzone.h | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/include/linux/mmzone.h b/include/linux/mmzone.h index 2daa54f55db7..50aaca81f63d 100644 --- a/include/linux/mmzone.h +++ b/include/linux/mmzone.h | |||
@@ -142,6 +142,7 @@ enum zone_stat_item { | |||
142 | NUMA_OTHER, /* allocation from other node */ | 142 | NUMA_OTHER, /* allocation from other node */ |
143 | #endif | 143 | #endif |
144 | NR_ANON_TRANSPARENT_HUGEPAGES, | 144 | NR_ANON_TRANSPARENT_HUGEPAGES, |
145 | NR_FREE_CMA_PAGES, | ||
145 | NR_VM_ZONE_STAT_ITEMS }; | 146 | NR_VM_ZONE_STAT_ITEMS }; |
146 | 147 | ||
147 | /* | 148 | /* |
@@ -217,6 +218,8 @@ struct lruvec { | |||
217 | #define ISOLATE_UNMAPPED ((__force isolate_mode_t)0x2) | 218 | #define ISOLATE_UNMAPPED ((__force isolate_mode_t)0x2) |
218 | /* Isolate for asynchronous migration */ | 219 | /* Isolate for asynchronous migration */ |
219 | #define ISOLATE_ASYNC_MIGRATE ((__force isolate_mode_t)0x4) | 220 | #define ISOLATE_ASYNC_MIGRATE ((__force isolate_mode_t)0x4) |
221 | /* Isolate unevictable pages */ | ||
222 | #define ISOLATE_UNEVICTABLE ((__force isolate_mode_t)0x8) | ||
220 | 223 | ||
221 | /* LRU Isolation modes. */ | 224 | /* LRU Isolation modes. */ |
222 | typedef unsigned __bitwise__ isolate_mode_t; | 225 | typedef unsigned __bitwise__ isolate_mode_t; |
@@ -369,8 +372,12 @@ struct zone { | |||
369 | spinlock_t lock; | 372 | spinlock_t lock; |
370 | int all_unreclaimable; /* All pages pinned */ | 373 | int all_unreclaimable; /* All pages pinned */ |
371 | #if defined CONFIG_COMPACTION || defined CONFIG_CMA | 374 | #if defined CONFIG_COMPACTION || defined CONFIG_CMA |
372 | /* pfn where the last incremental compaction isolated free pages */ | 375 | /* Set to true when the PG_migrate_skip bits should be cleared */ |
376 | bool compact_blockskip_flush; | ||
377 | |||
378 | /* pfns where compaction scanners should start */ | ||
373 | unsigned long compact_cached_free_pfn; | 379 | unsigned long compact_cached_free_pfn; |
380 | unsigned long compact_cached_migrate_pfn; | ||
374 | #endif | 381 | #endif |
375 | #ifdef CONFIG_MEMORY_HOTPLUG | 382 | #ifdef CONFIG_MEMORY_HOTPLUG |
376 | /* see spanned/present_pages for more description */ | 383 | /* see spanned/present_pages for more description */ |
@@ -704,6 +711,7 @@ typedef struct pglist_data { | |||
704 | unsigned long node_spanned_pages; /* total size of physical page | 711 | unsigned long node_spanned_pages; /* total size of physical page |
705 | range, including holes */ | 712 | range, including holes */ |
706 | int node_id; | 713 | int node_id; |
714 | nodemask_t reclaim_nodes; /* Nodes allowed to reclaim from */ | ||
707 | wait_queue_head_t kswapd_wait; | 715 | wait_queue_head_t kswapd_wait; |
708 | wait_queue_head_t pfmemalloc_wait; | 716 | wait_queue_head_t pfmemalloc_wait; |
709 | struct task_struct *kswapd; /* Protected by lock_memory_hotplug() */ | 717 | struct task_struct *kswapd; /* Protected by lock_memory_hotplug() */ |