Re: [PATCH v2 12/46] mm/memcg: Use the node id in mem_cgroup_update_tree()

From: Michal Hocko
Date: Fri Jun 25 2021 - 04:05:40 EST


On Thu 24-06-21 17:19:53, Matthew Wilcox wrote:
> On Wed, Jun 23, 2021 at 10:12:40AM +0200, Christoph Hellwig wrote:
> > On Tue, Jun 22, 2021 at 01:15:17PM +0100, Matthew Wilcox (Oracle) wrote:
> > > static struct mem_cgroup_per_node *
> > > -mem_cgroup_page_nodeinfo(struct mem_cgroup *memcg, struct page *page)
> > > +mem_cgroup_nodeinfo(struct mem_cgroup *memcg, int nid)
> > > {
> > > - int nid = page_to_nid(page);
> > > -
> > > return memcg->nodeinfo[nid];
> > > }
> >
> > I'd just kill this function entirely and open code it into the only
> > caller
>
> Done.

This makes sense.

> > > - mctz = soft_limit_tree_from_page(page);
> > > + mctz = soft_limit_tree_node(nid);
> >
> > And while were at it, soft_limit_tree_node seems like a completely
> > pointless helper that does nothing but obsfucating the code. While
> > you touch this area it might be worth to spin another patch to just
> > remove it as well.

Yeah, the whole soft limit reclaim code is kinda pain to even look at.
Opencoding those two will certainly not make it worse so fine with me.

> I'm scared that if I touch this file too much, people will start to
> think I know something about memcgs. Happy to add it on; cc'ing
> maintainers.

get_maintainers will surely notice ;)

--
Michal Hocko
SUSE Labs