Re: [PATCH] memcg: simple cleanup of stats update functions

From: shakeel . butt
Date: Sat Apr 20 2024 - 13:25:19 EST


April 20, 2024 at 6:23 AM, "Johannes Weiner" <hannes@xxxxxxxxxxx> wrote:



>
> Hi Shakeel,
>
> On Fri, Apr 19, 2024 at 04:39:49PM -0700, Shakeel Butt wrote:
>
> >
> > @@ -2983,10 +2984,6 @@ void mem_cgroup_commit_charge(struct folio *folio, struct mem_cgroup *memcg)
> >
> >
> >
> > #ifdef CONFIG_MEMCG_KMEM
> >
> >
> >
> > -/*
> >
> > - * mod_objcg_mlstate() may be called with irq enabled, so
> >
> > - * mod_memcg_lruvec_state() should be used.
> >
> > - */
> >
> > static inline void mod_objcg_mlstate(struct obj_cgroup *objcg,
> >
> > struct pglist_data *pgdat,
> >
> > enum node_stat_item idx, int nr)
> >
> > @@ -2994,10 +2991,12 @@ static inline void mod_objcg_mlstate(struct obj_cgroup *objcg,
> >
> > struct mem_cgroup *memcg;
> >
> > struct lruvec *lruvec;
> >
> >
> >
> > + lockdep_assert_irqs_disabled();
> >
> > +
> >
> > rcu_read_lock();
> >
> > memcg = obj_cgroup_memcg(objcg);
> >
> > lruvec = mem_cgroup_lruvec(memcg, pgdat);
> >
> > - mod_memcg_lruvec_state(lruvec, idx, nr);
> >
> > + __mod_memcg_lruvec_state(lruvec, idx, nr);
> >
> > rcu_read_unlock();
> >
> > }
> >
>
> Best to rename it to __mod_objcg_mlstate() as well to follow the
>
> naming pattern for whether caller or callee handles IRQ toggling?

Will do shortly in v2.

>
> Otherwise, looks great to me!
>
> Acked-by: Johannes Weiner <hannes@xxxxxxxxxxx>

Thanks a lot.