Merge 5.9-rc8 into android-mainline
Linux 5.9-rc8 Signed-off-by: Greg Kroah-Hartman <gregkh@google.com> Change-Id: I4a03857522443f5d032a0cc1ecdced3675255d5e
This commit is contained in:
@@ -3379,9 +3379,16 @@ struct page *rmqueue(struct zone *preferred_zone,
|
||||
struct page *page;
|
||||
|
||||
if (likely(order == 0)) {
|
||||
page = rmqueue_pcplist(preferred_zone, zone, gfp_flags,
|
||||
/*
|
||||
* MIGRATE_MOVABLE pcplist could have the pages on CMA area and
|
||||
* we need to skip it when CMA area isn't allowed.
|
||||
*/
|
||||
if (!IS_ENABLED(CONFIG_CMA) || alloc_flags & ALLOC_CMA ||
|
||||
migratetype != MIGRATE_MOVABLE) {
|
||||
page = rmqueue_pcplist(preferred_zone, zone, gfp_flags,
|
||||
migratetype, alloc_flags);
|
||||
goto out;
|
||||
goto out;
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
@@ -3393,7 +3400,13 @@ struct page *rmqueue(struct zone *preferred_zone,
|
||||
|
||||
do {
|
||||
page = NULL;
|
||||
if (alloc_flags & ALLOC_HARDER) {
|
||||
/*
|
||||
* order-0 request can reach here when the pcplist is skipped
|
||||
* due to non-CMA allocation context. HIGHATOMIC area is
|
||||
* reserved for high-order atomic allocation, so order-0
|
||||
* request should skip it.
|
||||
*/
|
||||
if (order > 0 && alloc_flags & ALLOC_HARDER) {
|
||||
page = __rmqueue_smallest(zone, order, MIGRATE_HIGHATOMIC);
|
||||
if (page)
|
||||
trace_mm_page_alloc_zone_locked(page, order, migratetype);
|
||||
|
Reference in New Issue
Block a user