|
@@ -556,8 +556,9 @@ static void free_pcppages_bulk(struct zone *zone, int count,
|
|
|
page = list_entry(list->prev, struct page, lru);
|
|
page = list_entry(list->prev, struct page, lru);
|
|
|
/* must delete as __free_one_page list manipulates */
|
|
/* must delete as __free_one_page list manipulates */
|
|
|
list_del(&page->lru);
|
|
list_del(&page->lru);
|
|
|
- __free_one_page(page, zone, 0, migratetype);
|
|
|
|
|
- trace_mm_page_pcpu_drain(page, 0, migratetype);
|
|
|
|
|
|
|
+ /* MIGRATE_MOVABLE list may include MIGRATE_RESERVEs */
|
|
|
|
|
+ __free_one_page(page, zone, 0, page_private(page));
|
|
|
|
|
+ trace_mm_page_pcpu_drain(page, 0, page_private(page));
|
|
|
} while (--count && --batch_free && !list_empty(list));
|
|
} while (--count && --batch_free && !list_empty(list));
|
|
|
}
|
|
}
|
|
|
spin_unlock(&zone->lock);
|
|
spin_unlock(&zone->lock);
|