|
@@ -3636,6 +3636,12 @@ retry_cpuset:
|
|
alloc_mask = memalloc_noio_flags(gfp_mask);
|
|
alloc_mask = memalloc_noio_flags(gfp_mask);
|
|
ac.spread_dirty_pages = false;
|
|
ac.spread_dirty_pages = false;
|
|
|
|
|
|
|
|
+ /*
|
|
|
|
+ * Restore the original nodemask if it was potentially replaced with
|
|
|
|
+ * &cpuset_current_mems_allowed to optimize the fast-path attempt.
|
|
|
|
+ */
|
|
|
|
+ if (cpusets_enabled())
|
|
|
|
+ ac.nodemask = nodemask;
|
|
page = __alloc_pages_slowpath(alloc_mask, order, &ac);
|
|
page = __alloc_pages_slowpath(alloc_mask, order, &ac);
|
|
|
|
|
|
no_zone:
|
|
no_zone:
|