|
@@ -2915,7 +2915,7 @@ unsigned long try_to_free_pages(struct zonelist *zonelist, int order,
|
|
|
unsigned long nr_reclaimed;
|
|
|
struct scan_control sc = {
|
|
|
.nr_to_reclaim = SWAP_CLUSTER_MAX,
|
|
|
- .gfp_mask = (gfp_mask = memalloc_noio_flags(gfp_mask)),
|
|
|
+ .gfp_mask = (gfp_mask = current_gfp_context(gfp_mask)),
|
|
|
.reclaim_idx = gfp_zone(gfp_mask),
|
|
|
.order = order,
|
|
|
.nodemask = nodemask,
|
|
@@ -2995,7 +2995,7 @@ unsigned long try_to_free_mem_cgroup_pages(struct mem_cgroup *memcg,
|
|
|
int nid;
|
|
|
struct scan_control sc = {
|
|
|
.nr_to_reclaim = max(nr_pages, SWAP_CLUSTER_MAX),
|
|
|
- .gfp_mask = (gfp_mask & GFP_RECLAIM_MASK) |
|
|
|
+ .gfp_mask = (current_gfp_context(gfp_mask) & GFP_RECLAIM_MASK) |
|
|
|
(GFP_HIGHUSER_MOVABLE & ~GFP_RECLAIM_MASK),
|
|
|
.reclaim_idx = MAX_NR_ZONES - 1,
|
|
|
.target_mem_cgroup = memcg,
|
|
@@ -3702,7 +3702,7 @@ static int __node_reclaim(struct pglist_data *pgdat, gfp_t gfp_mask, unsigned in
|
|
|
int classzone_idx = gfp_zone(gfp_mask);
|
|
|
struct scan_control sc = {
|
|
|
.nr_to_reclaim = max(nr_pages, SWAP_CLUSTER_MAX),
|
|
|
- .gfp_mask = (gfp_mask = memalloc_noio_flags(gfp_mask)),
|
|
|
+ .gfp_mask = (gfp_mask = current_gfp_context(gfp_mask)),
|
|
|
.order = order,
|
|
|
.priority = NODE_RECLAIM_PRIORITY,
|
|
|
.may_writepage = !!(node_reclaim_mode & RECLAIM_WRITE),
|