diff options
Diffstat (limited to 'mm/memory-failure.c')
| -rw-r--r-- | mm/memory-failure.c | 7 | 
1 files changed, 5 insertions, 2 deletions
diff --git a/mm/memory-failure.c b/mm/memory-failure.c index 47b8ccb1fb9b..f1aa6433f404 100644 --- a/mm/memory-failure.c +++ b/mm/memory-failure.c @@ -1648,9 +1648,12 @@ EXPORT_SYMBOL(unpoison_memory);  static struct page *new_page(struct page *p, unsigned long private)  { -	int nid = page_to_nid(p); +	struct migration_target_control mtc = { +		.nid = page_to_nid(p), +		.gfp_mask = GFP_USER | __GFP_MOVABLE | __GFP_RETRY_MAYFAIL, +	}; -	return new_page_nodemask(p, nid, &node_states[N_MEMORY]); +	return alloc_migration_target(p, (unsigned long)&mtc);  }  /*  |