Re: [PATCH] mm: page_alloc: avoid wakeup kswapd on the unintended node

Mel Gorman
2014-08-29T08:12:22Z

On Fri, Aug 29, 2014 at 03:03:19PM +0800, Weijie Yang wrote:
> When enter page_alloc slowpath, we wakeup kswapd on every pgdat
> according to the zonelist and high_zoneidx. However, this doesn't
> take nodemask into account, and could prematurely wakeup kswapd on
> some unintended nodes.
>
> This patch uses for_each_zone_zonelist_nodemask() instead of
> for_each_zone_zonelist() in wake_all_kswapds() to avoid the above situation.
>
> Signed-off-by: Weijie Yang <weijie.yang@samsung.com>

Just out of curiousity, did you measure a problem due to this or is
the patch due to code inspection? It was known that we examined useless
nodes but assumed to not be a problem because the watermark check should
prevent spurious wakeups. However, we do a cpuset check and this patch
is consistent with that so regardless of why you wrote the patch

Acked-by: Mel Gorman <mgorman@suse.de>

--
Mel Gorman
SUSE Labs