On Thu 15-06-23 07:32:25, Haifeng Xu wrote: > mem_cgroup_init() request for allocations from each possible node, and > it's used to be a problem because NODE_DATA is not allocated for offline > node. Things have already changed since commit 09f49dca570a9 ("mm: handle > uninitialized numa nodes gracefully"), so it's unnecessary to check for > !node_online nodes here. How have you tested this patch? I am not saying it is wrong and it looks like the right thing to do. But the early init code has proven to be more subtle than expected so it is definitely good to know that this has been tested on memory less setup and passed. > Signed-off-by: Haifeng Xu <haifeng.xu@xxxxxxxxxx> > --- > mm/memcontrol.c | 3 +-- > 1 file changed, 1 insertion(+), 2 deletions(-) > > diff --git a/mm/memcontrol.c b/mm/memcontrol.c > index 4b27e245a055..c73c5fb33f65 100644 > --- a/mm/memcontrol.c > +++ b/mm/memcontrol.c > @@ -7421,8 +7421,7 @@ static int __init mem_cgroup_init(void) > for_each_node(node) { > struct mem_cgroup_tree_per_node *rtpn; > > - rtpn = kzalloc_node(sizeof(*rtpn), GFP_KERNEL, > - node_online(node) ? node : NUMA_NO_NODE); > + rtpn = kzalloc_node(sizeof(*rtpn), GFP_KERNEL, node); > > rtpn->rb_root = RB_ROOT; > rtpn->rb_rightmost = NULL; > -- > 2.25.1 -- Michal Hocko SUSE Labs