On Tue 10-03-20 17:18:02, Andrew Morton wrote: [...] > (And why is shrink_node_memcgs compiled in when CONFIG_MEMCG=n?) Because there won't be anything memcg specific with the config disabled. mem_cgroup_iter will expand to NULL memcg, mem_cgroup_protected switch compiled out, mem_cgroup_lruvec will return the lruvec abstraction which resolves to pgdat and the rest is not memcg dependent. We could have split up the reclaim protection or the loop out of the line but I believe it is better to be clearly visible. -- Michal Hocko SUSE Labs