diff options
Diffstat (limited to 'mm/page_alloc.c')
-rw-r--r-- | mm/page_alloc.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/mm/page_alloc.c b/mm/page_alloc.c index 7990ca154d1b..cd0c95c6cc9e 100644 --- a/mm/page_alloc.c +++ b/mm/page_alloc.c | |||
@@ -1189,6 +1189,19 @@ out: | |||
1189 | } | 1189 | } |
1190 | 1190 | ||
1191 | /* | 1191 | /* |
1192 | * Free a list of 0-order pages | ||
1193 | */ | ||
1194 | void free_hot_cold_page_list(struct list_head *list, int cold) | ||
1195 | { | ||
1196 | struct page *page, *next; | ||
1197 | |||
1198 | list_for_each_entry_safe(page, next, list, lru) { | ||
1199 | trace_mm_pagevec_free(page, cold); | ||
1200 | free_hot_cold_page(page, cold); | ||
1201 | } | ||
1202 | } | ||
1203 | |||
1204 | /* | ||
1192 | * split_page takes a non-compound higher-order page, and splits it into | 1205 | * split_page takes a non-compound higher-order page, and splits it into |
1193 | * n (1<<order) sub-pages: page[0..n] | 1206 | * n (1<<order) sub-pages: page[0..n] |
1194 | * Each sub-page must be freed individually. | 1207 | * Each sub-page must be freed individually. |