On 07/14/2017 10:00 AM, Michal Hocko wrote: > From: Michal Hocko <mho...@suse.com> > > 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.
Doesn't the "if (pgdat<...>zone == NULL) in fact mean, that this is just always dead code? Even more reason to remove it. > Cc: Toshi Kani <toshi.k...@hp.com> > Signed-off-by: Michal Hocko <mho...@suse.com> Acked-by: Vlastimil Babka <vba...@suse.cz> > --- > 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; >