diff options
Diffstat (limited to 'mm/page_alloc.c')
-rw-r--r-- | mm/page_alloc.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/mm/page_alloc.c b/mm/page_alloc.c index ac4f8c6b5c10..1a889c3fec59 100644 --- a/mm/page_alloc.c +++ b/mm/page_alloc.c | |||
@@ -1333,7 +1333,7 @@ nofail_alloc: | |||
1333 | reclaim_state.reclaimed_slab = 0; | 1333 | reclaim_state.reclaimed_slab = 0; |
1334 | p->reclaim_state = &reclaim_state; | 1334 | p->reclaim_state = &reclaim_state; |
1335 | 1335 | ||
1336 | did_some_progress = try_to_free_pages(zonelist->zones, gfp_mask); | 1336 | did_some_progress = try_to_free_pages(zonelist->zones, order, gfp_mask); |
1337 | 1337 | ||
1338 | p->reclaim_state = NULL; | 1338 | p->reclaim_state = NULL; |
1339 | p->flags &= ~PF_MEMALLOC; | 1339 | p->flags &= ~PF_MEMALLOC; |
@@ -1370,7 +1370,8 @@ nofail_alloc: | |||
1370 | */ | 1370 | */ |
1371 | do_retry = 0; | 1371 | do_retry = 0; |
1372 | if (!(gfp_mask & __GFP_NORETRY)) { | 1372 | if (!(gfp_mask & __GFP_NORETRY)) { |
1373 | if ((order <= 3) || (gfp_mask & __GFP_REPEAT)) | 1373 | if ((order <= PAGE_ALLOC_COSTLY_ORDER) || |
1374 | (gfp_mask & __GFP_REPEAT)) | ||
1374 | do_retry = 1; | 1375 | do_retry = 1; |
1375 | if (gfp_mask & __GFP_NOFAIL) | 1376 | if (gfp_mask & __GFP_NOFAIL) |
1376 | do_retry = 1; | 1377 | do_retry = 1; |