Re: [External] Re: [PATCH v5] mm: memcontrol: Add the missing numa_stat interface for cgroup v2

From: Muchun Song
Date: Wed Sep 16 2020 - 16:52:29 EST


On Wed, Sep 16, 2020 at 10:42 PM Johannes Weiner <hannes@xxxxxxxxxxx> wrote:
>
> On Wed, Sep 16, 2020 at 12:14:49PM +0800, Muchun Song wrote:
> > On Wed, Sep 16, 2020 at 5:50 AM Johannes Weiner <hannes@xxxxxxxxxxx> wrote:
> > >
> > > On Wed, Sep 16, 2020 at 01:18:01AM +0800, Muchun Song wrote:
> > > > In the cgroup v1, we have a numa_stat interface. This is useful for
> > > > providing visibility into the numa locality information within an
> > > > memcg since the pages are allowed to be allocated from any physical
> > > > node. One of the use cases is evaluating application performance by
> > > > combining this information with the application's CPU allocation.
> > > > But the cgroup v2 does not. So this patch adds the missing information.
> > > >
> > > > Signed-off-by: Muchun Song <songmuchun@xxxxxxxxxxxxx>
> > > > Suggested-by: Shakeel Butt <shakeelb@xxxxxxxxxx>
> > > > Reviewed-by: Shakeel Butt <shakeelb@xxxxxxxxxx>
> > >
> > > Yup, that would be useful information to have. Just a few comments on
> > > the patch below:
> > >
> > > > @@ -1368,6 +1368,78 @@ PAGE_SIZE multiple when read back.
> > > > collapsing an existing range of pages. This counter is not
> > > > present when CONFIG_TRANSPARENT_HUGEPAGE is not set.
> > > >
> > > > + memory.numa_stat
> > > > + A read-only flat-keyed file which exists on non-root cgroups.
> > >
> > > It's a nested key file, not flat.
> >
> > This is just copied from memory.stat documentation.Is the memory.stat
> > also a nested key file?
>
> No, memory.stat is a different format. From higher up in the document:
>
> Flat keyed
>
> KEY0 VAL0\n
> KEY1 VAL1\n
> ...
>
> Nested keyed
>
> KEY0 SUB_KEY0=VAL00 SUB_KEY1=VAL01...
> KEY1 SUB_KEY0=VAL10 SUB_KEY1=VAL11...
> ...

Got it. Thanks for your explanation.

>
> > > Otherwise, this looks reasonable to me.
> >
> > OK. Will do that.
>
> Thanks!



--
Yours,
Muchun