Re: [PATCH 5/9] mm, memory_hotplug: remove explicit build_all_zonelists from try_online_node

From: Michal Hocko
Date: Fri Jul 14 2017 - 08:14:31 EST


[Fixup email to Toshi Kani - the cover is
http://lkml.kernel.org/r/20170714080006.7250-1-mhocko@xxxxxxxxxx]

On Fri 14-07-17 10:00:02, Michal Hocko wrote:
> From: Michal Hocko <mhocko@xxxxxxxx>
>
> try_online_node calls hotadd_new_pgdat which already calls
> build_all_zonelists. So the additional call is redundant. Even though
> hotadd_new_pgdat will only initialize zonelists of the new node this is
> the right thing to do because such a node doesn't have any memory so
> other zonelists would ignore all the zones from this node anyway.
>
> Cc: Toshi Kani <toshi.kani@xxxxxx>
> Signed-off-by: Michal Hocko <mhocko@xxxxxxxx>
> ---
> mm/memory_hotplug.c | 7 -------
> 1 file changed, 7 deletions(-)
>
> diff --git a/mm/memory_hotplug.c b/mm/memory_hotplug.c
> index 639b8af37c45..0d2f6a11075c 100644
> --- a/mm/memory_hotplug.c
> +++ b/mm/memory_hotplug.c
> @@ -1104,13 +1104,6 @@ int try_online_node(int nid)
> node_set_online(nid);
> ret = register_one_node(nid);
> BUG_ON(ret);
> -
> - if (pgdat->node_zonelists->_zonerefs->zone == NULL) {
> - mutex_lock(&zonelists_mutex);
> - build_all_zonelists(NULL);
> - mutex_unlock(&zonelists_mutex);
> - }
> -
> out:
> mem_hotplug_done();
> return ret;
> --
> 2.11.0
>

--
Michal Hocko
SUSE Labs